:: Some Basic Properties of Many Sorted Sets :: by Artur Korni{\l}owicz :: :: Received September 29, 1995 :: Copyright (c) 1995-2018 Association of Mizar Users :: (Stowarzyszenie Uzytkownikow Mizara, Bialystok, Poland). :: This code can be distributed under the GNU General Public Licence :: version 3.0 or later, or the Creative Commons Attribution-ShareAlike :: License version 3.0 or later, subject to the binding interpretation :: detailed in file COPYING.interpretation. :: See COPYING.GPL and COPYING.CC-BY-SA for the full text of these :: licenses, or see http://www.gnu.org/licenses/gpl.html and :: http://creativecommons.org/licenses/by-sa/3.0/. environ vocabularies FUNCT_1, PBOOLE, RELAT_1, FUNCT_4, FUNCOP_1, XBOOLE_0, FINSET_1, TARSKI, ZFMISC_1, PZFMISC1, SETLIM_2; notations TARSKI, XBOOLE_0, ZFMISC_1, RELAT_1, FUNCT_1, FUNCT_4, FINSET_1, FUNCOP_1, PBOOLE, MBOOLEAN; constructors FUNCT_4, MBOOLEAN, PBOOLE, FINSET_1, RELSET_1; registrations XBOOLE_0, FUNCOP_1, FINSET_1; requirements BOOLE; definitions FINSET_1, PBOOLE; equalities FUNCOP_1; expansions PBOOLE; theorems FUNCOP_1, ENUMSET1, FUNCT_4, MBOOLEAN, PBOOLE, TARSKI, ZFMISC_1, RELAT_1, XBOOLE_0, PARTFUN1; schemes PBOOLE; begin :: Preliminaries reserve i for object, I for set, f for Function, x, x1, x2, y, A, B, X, Y, Z for ManySortedSet of I; theorem Th1: for X be object for M be ManySortedSet of I st i in I holds dom (M +* (i .--> X)) = I proof let X be object, M be ManySortedSet of I such that A1: i in I; thus dom (M +* (i .--> X)) = dom M \/ dom (i .--> X) by FUNCT_4:def 1 .= I \/ dom (i .--> X) by PARTFUN1:def 2 .= I \/ {i} by FUNCOP_1:13 .= I by A1,ZFMISC_1:40; end; theorem f = {} implies f is ManySortedSet of {} by PARTFUN1:def 2,RELAT_1:38,def 18; theorem I is non empty implies not ex X st X is empty-yielding & X is non-empty proof assume A1: I is non empty; given X such that A2: X is empty-yielding and A3: X is non-empty; consider i being object such that A4: i in I by A1,XBOOLE_0:def 1; X.i is empty by A2,A4; hence contradiction by A3,A4; end; begin :: Singelton and unordered pairs definition let I, A; func {A} -> ManySortedSet of I means :Def1: for i being object st i in I holds it.i = {A.i}; existence proof deffunc F(object) = {A.\$1}; thus ex M be ManySortedSet of I st for i st i in I holds M.i = F(i) from PBOOLE:sch 4; end; uniqueness proof let X, Y be ManySortedSet of I such that A1: for i being object st i in I holds X.i = {A.i} and A2: for i being object st i in I holds Y.i = {A.i}; now let i be object; assume A3: i in I; hence X.i = {A.i} by A1 .= Y.i by A2,A3; end; hence X = Y; end; end; registration let I, A; cluster {A} -> non-empty finite-yielding; coherence proof thus {A} is non-empty proof let i be object such that A1: i in I; {A.i} <> {}; hence thesis by A1,Def1; end; let i be object such that A2: i in I; {A.i} is finite; hence thesis by A2,Def1; end; end; definition let I, A, B; func {A,B} -> ManySortedSet of I means :Def2: for i being object st i in I holds it.i = {A.i,B.i}; existence proof deffunc F(object) = {A.\$1,B.\$1}; thus ex M be ManySortedSet of I st for i being object st i in I holds M.i = F(i) from PBOOLE:sch 4; end; uniqueness proof let X, Y be ManySortedSet of I such that A1: for i being object st i in I holds X.i = {A.i,B.i} and A2: for i being object st i in I holds Y.i = {A.i,B.i}; now let i be object; assume A3: i in I; hence X.i = {A.i,B.i} by A1 .= Y.i by A2,A3; end; hence X = Y; end; commutativity; end; registration let I, A, B; cluster {A,B} -> non-empty finite-yielding; coherence proof thus {A,B} is non-empty proof let i be object such that A1: i in I; {A.i,B.i} <> {}; hence thesis by A1,Def2; end; let i being object such that A2: i in I; {A.i,B.i} is finite; hence thesis by A2,Def2; end; end; theorem :: Tarski:3 X = { y } iff for x holds x in X iff x = y proof thus X = { y } implies for x holds x in X iff x = y proof assume A1: X = {y}; let x; thus x in X implies x = y proof assume A2: x in X; now let i be object; assume A3: i in I; then A4: x.i in X.i by A2; X.i = {y.i} by A1,A3,Def1; hence x.i = y.i by A4,TARSKI:def 1; end; hence thesis; end; assume A5: x = y; let i be object; assume i in I; then X.i = {y.i} by A1,Def1; hence thesis by A5,TARSKI:def 1; end; assume A6: for x holds x in X iff x = y; then A7: y in X; now let i be object such that A8: i in I; now let a be object; thus a in X.i iff a = y.i proof thus a in X.i implies a = y.i proof assume A9: a in X.i; A10: dom (i .--> a) = {i} by FUNCOP_1:13; dom (y +* (i .--> a)) = I by A8,Th1; then reconsider x1 = y +* (i .--> a) as ManySortedSet of I by PARTFUN1:def 2,RELAT_1:def 18; i in {i} by TARSKI:def 1; then A11: x1.i = (i .--> a).i by A10,FUNCT_4:13 .= a by FUNCOP_1:72; x1 in X proof let q be object such that A12: q in I; per cases; suppose i = q; hence thesis by A9,A11; end; suppose i <> q; then not q in dom (i .--> a) by A10,TARSKI:def 1; then x1.q = y.q by FUNCT_4:11; hence thesis by A7,A12; end; end; hence thesis by A6,A11; end; assume a = y.i; hence thesis by A7,A8; end; end; then X.i = {y.i} by TARSKI:def 1; hence X.i = {y}.i by A8,Def1; end; hence thesis; end; theorem :: Tarski:4 a (for x holds x in X iff x = x1 or x = x2) implies X = { x1,x2 } proof assume A1: for x holds x in X iff x = x1 or x = x2; then A2: x1 in X; A3: x2 in X by A1; now let i be object such that A4: i in I; now let a be object; thus a in X.i iff a = x1.i or a = x2.i proof thus a in X.i implies a = x1.i or a = x2.i proof assume that A5: a in X.i and A6: a <> x1.i; A7: dom (i .--> a) = {i} by FUNCOP_1:13; dom (x2 +* (i .--> a)) = I by A4,Th1; then reconsider k2 = x2 +* (i .--> a) as ManySortedSet of I by PARTFUN1:def 2,RELAT_1:def 18; i in {i} by TARSKI:def 1; then A8: k2.i = (i .--> a).i by A7,FUNCT_4:13 .= a by FUNCOP_1:72; k2 in X proof let q be object such that A9: q in I; per cases; suppose i = q; hence thesis by A5,A8; end; suppose i <> q; then not q in dom (i .--> a) by A7,TARSKI:def 1; then k2.q = x2.q by FUNCT_4:11; hence thesis by A3,A9; end; end; hence thesis by A1,A6,A8; end; assume A10: a = x1.i or a = x2.i; per cases by A10; suppose a = x1.i; hence thesis by A2,A4; end; suppose a = x2.i; hence thesis by A3,A4; end; end; end; then X.i = {x1.i,x2.i} by TARSKI:def 2; hence X.i = { x1,x2 }.i by A4,Def2; end; hence thesis; end; theorem :: Tarski:4 b X = { x1,x2 } implies for x holds x = x1 or x = x2 implies x in X proof assume A1: X = { x1,x2 }; let x; assume A2: x = x1 or x = x2; let i; assume i in I; then A3: X.i = {x1.i,x2.i} by A1,Def2; per cases by A2; suppose x = x1; hence thesis by A3,TARSKI:def 2; end; suppose x = x2; hence thesis by A3,TARSKI:def 2; end; end; theorem :: ENUMSET1:3 x in { A } implies x = A proof assume A1: x in { A }; now let i be object; assume A2: i in I; then x.i in {A}.i by A1; then x.i in {A.i} by A2,Def1; hence x.i = A.i by TARSKI:def 1; end; hence thesis; end; theorem :: ENUMSET1:4 x in { x } proof let i such that A1: i in I; x.i in {x.i} by TARSKI:def 1; hence thesis by A1,Def1; end; theorem :: ENUMSET1:9 x = A or x = B implies x in { A,B } proof assume A1: x=A or x=B; per cases by A1; suppose A2: x=A; let i such that A3: i in I; x.i in {A.i,B.i} by A2,TARSKI:def 2; hence thesis by A3,Def2; end; suppose A4: x=B; let i such that A5: i in I; x.i in {A.i,B.i} by A4,TARSKI:def 2; hence thesis by A5,Def2; end; end; theorem ::ENUMSET1:41 {A} (\/) {B} = {A,B} proof now let i be object; assume A1: i in I; hence ({A} (\/) {B}).i = {A}.i \/ {B}.i by PBOOLE:def 4 .= {A}.i \/ {B.i} by A1,Def1 .= {A.i} \/ {B.i} by A1,Def1 .= {A.i,B.i} by ENUMSET1:1 .= {A,B}.i by A1,Def2; end; hence thesis; end; theorem :: ENUMSET1:69 { x,x } = { x } proof now let i be object; assume A1: i in I; hence { x,x }.i = {x.i,x.i} by Def2 .= {x.i} by ENUMSET1:29 .= { x }.i by A1,Def1; end; hence thesis; end; theorem :: SETWISEO:1 {A} c= {B} implies A = B proof assume A1: {A} c= {B}; now let i be object; assume A2: i in I; then {A}.i c= {B}.i by A1; then {A}.i c= {B.i} by A2,Def1; then {A.i} c= {B.i} by A2,Def1; hence A.i = B.i by ZFMISC_1:18; end; hence thesis; end; theorem :: ZFMISC_1:6 {x} = {y} implies x = y proof assume A1: {x} = {y}; now let i be object; assume A2: i in I; then {x.i} = {x}.i by Def1 .= {y.i} by A1,A2,Def1; hence x.i = y.i by ZFMISC_1:3; end; hence thesis; end; theorem :: ZFMISC_1:8 {x} = {A,B} implies x = A & x = B proof assume A1: {x} = {A,B}; now let i be object; assume A2: i in I; then {x.i} = {x}.i by Def1 .= {A.i,B.i} by A1,A2,Def2; hence x.i = A.i by ZFMISC_1:4; end; hence x = A; now let i be object; assume A3: i in I; then {x.i} = {x}.i by Def1 .= {A.i,B.i} by A1,A3,Def2; hence x.i = B.i by ZFMISC_1:4; end; hence thesis; end; theorem :: ZFMISC_1:9 {x} = {A,B} implies A = B proof assume A1: {x} = {A,B}; now let i be object; assume A2: i in I; then {x.i} = {x}.i by Def1 .= {A.i,B.i} by A1,A2,Def2; hence A.i = B.i by ZFMISC_1:5; end; hence thesis; end; theorem :: ZFMISC_1:12 {x} c= {x,y} & {y} c= {x,y} proof thus {x} c= {x,y} proof let i such that A1: i in I; {x.i} c= {x.i,y.i} by ZFMISC_1:7; then {x}.i c= {x.i,y.i} by A1,Def1; hence thesis by A1,Def2; end; let i such that A2: i in I; {y.i} c= {x.i,y.i} by ZFMISC_1:7; then {y}.i c= {x.i,y.i} by A2,Def1; hence thesis by A2,Def2; end; theorem :: ZFMISC_1:13 {x} (\/) {y} = {x} implies x = y proof assume A1: {x} (\/) {y} = {x}; now let i be object such that A2: i in I; {x.i} \/ {y.i} = {x.i} \/ {y}.i by A2,Def1 .= {x}.i \/ {y}.i by A2,Def1 .= ({x} (\/) {y}).i by A2,PBOOLE:def 4 .= {x.i} by A2,A1,Def1; hence x.i = y.i by ZFMISC_1:8; end; hence thesis; end; theorem :: ZFMISC_1:14 {x} (\/) {x,y} = {x,y} proof now let i be object; assume A1: i in I; hence ({x} (\/) {x,y}).i = {x}.i \/ {x,y}.i by PBOOLE:def 4 .= {x.i} \/ {x,y}.i by A1,Def1 .= {x.i} \/ {x.i,y.i} by A1,Def2 .= {x.i,y.i} by ZFMISC_1:9 .= {x,y}.i by A1,Def2; end; hence thesis; end; theorem :: ZFMISC_1:16 I is non empty & {x} (/\) {y} = EmptyMS I implies x <> y proof assume that A1: I is non empty and A2: {x} (/\) {y} = EmptyMS I; now consider i being object such that A3: i in I by A1,XBOOLE_0:def 1; take i; {x.i} /\ {y.i} = {x}.i /\ {y.i} by A3,Def1 .= {x}.i /\ {y}.i by A3,Def1 .= ({x} (/\) {y}).i by A3,PBOOLE:def 5 .= {} by A2,PBOOLE:5; hence x.i <> y.i; end; hence thesis; end; theorem :: ZFMISC_1:18 {x} (/\) {y} = {x} implies x = y proof assume A1: {x} (/\) {y} = {x}; now let i be object; assume A2: i in I; then {x.i} /\ {y.i} = {x.i} /\ {y}.i by Def1 .= {x}.i /\ {y}.i by A2,Def1 .= ({x} (/\) {y}).i by A2,PBOOLE:def 5 .= {x.i} by A1,A2,Def1; hence x.i = y.i by ZFMISC_1:12; end; hence thesis; end; theorem :: ZFMISC_1:19 {x} (/\) {x,y} = {x} proof now let i be object; assume A1: i in I; hence ({x} (/\) {x,y}).i = {x}.i /\ {x,y}.i by PBOOLE:def 5 .= {x.i} /\ {x,y}.i by A1,Def1 .= {x.i} /\ {x.i,y.i} by A1,Def2 .= {x.i} by ZFMISC_1:13 .= {x}.i by A1,Def1; end; hence {x} (/\) {x,y} = {x}; end; theorem :: ZFMISC_1:20 I is non empty & {x} (\) {y} = {x} implies x <> y proof assume that A1: I is non empty and A2: {x} (\) {y} = {x}; now consider i being object such that A3: i in I by A1,XBOOLE_0:def 1; take i; {x.i} \ {y.i} = {x}.i \ {y.i} by A3,Def1 .= {x}.i \ {y}.i by A3,Def1 .= ({x} (\) {y}).i by A3,PBOOLE:def 6 .= {x.i} by A2,A3,Def1; hence x.i <> y.i by ZFMISC_1:14; end; hence thesis; end; theorem :: ZFMISC_1:21 {x} (\) {y} = EmptyMS I implies x = y proof assume A1: {x} (\) {y} = EmptyMS I; now let i be object; assume A2: i in I; then {x.i} \ {y.i} = {x}.i \ {y.i} by Def1 .= {x}.i \ {y}.i by A2,Def1 .= ({x} (\) {y}).i by A2,PBOOLE:def 6 .= {} by A1,PBOOLE:5; hence x.i = y.i by ZFMISC_1:15; end; hence thesis; end; theorem :: ZFMISC_1:22 {x} (\) {x,y} = EmptyMS I proof now let i be object; assume A1: i in I; hence ({x} (\) {x,y}).i = {x}.i \ {x,y}.i by PBOOLE:def 6 .= {x.i} \ {x,y}.i by A1,Def1 .= {x.i} \ {x.i,y.i} by A1,Def2 .= {} by ZFMISC_1:16 .= EmptyMS I.i by PBOOLE:5; end; hence {x} (\) {x,y} = EmptyMS I; end; theorem :: ZFMISC_1:24 {x} c= {y} implies {x} = {y} proof assume A1: {x} c= {y}; now let i be object; assume A2: i in I; then {x}.i c= {y}.i by A1; then {x.i} c= {y}.i by A2,Def1; then A3: {x.i} c= {y.i} by A2,Def1; thus {x}.i = {x.i} by A2,Def1 .= {y.i} by A3,ZFMISC_1:18 .= {y}.i by A2,Def1; end; hence thesis; end; theorem :: ZFMISC_1:26 {x,y} c= {A} implies x = A & y = A proof assume A1: {x,y} c= {A}; now let i be object; assume A2: i in I; then {x,y}.i c= {A}.i by A1; then {x,y}.i c= {A.i} by A2,Def1; then {x.i,y.i} c= {A.i} by A2,Def2; hence x.i = A.i by ZFMISC_1:20; end; hence x = A; now let i be object; assume A3: i in I; then {x,y}.i c= {A}.i by A1; then {x,y}.i c= {A.i} by A3,Def1; then {x.i,y.i} c= {A.i} by A3,Def2; hence y.i = A.i by ZFMISC_1:20; end; hence thesis; end; theorem :: ZFMISC_1:27 {x,y} c= {A} implies {x,y} = {A} proof assume A1: {x,y} c= {A}; now let i be object; assume A2: i in I; then {x,y}.i c= {A}.i by A1; then {x.i,y.i} c= {A}.i by A2,Def2; then A3: {x.i,y.i} c= {A.i} by A2,Def1; thus {x,y}.i = {x.i,y.i} by A2,Def2 .= {A.i} by A3,ZFMISC_1:21 .= {A}.i by A2,Def1; end; hence thesis; end; theorem :: ZFMISC_1:30 bool { x } = { EmptyMS I, {x} } proof now let i be object; assume A1: i in I; hence (bool {x}).i = bool ({x}.i) by MBOOLEAN:def 1 .= bool ({x.i}) by A1,Def1 .= {{}, {x.i}} by ZFMISC_1:24 .= {EmptyMS I.i, {x.i}} by PBOOLE:5 .= {EmptyMS I.i, {x}.i} by A1,Def1 .= { EmptyMS I, {x} }.i by A1,Def2; end; hence thesis; end; theorem :: ZFMISC_1:80 { A } c= bool A proof let i such that A1: i in I; {A.i} c= bool (A.i) by ZFMISC_1:68; then {A}.i c= bool (A.i) by A1,Def1; hence thesis by A1,MBOOLEAN:def 1; end; theorem :: ZFMISC_1:31 union { x } = x proof now let i be object; assume A1: i in I; hence (union { x }).i = union ({x}.i) by MBOOLEAN:def 2 .= union {x.i} by A1,Def1 .= x.i by ZFMISC_1:25; end; hence thesis; end; theorem :: ZFMISC_1:32 union { {x},{y} } = {x,y} proof now let i be object; assume A1: i in I; hence (union { {x},{y} }).i = union ({{x},{y}}.i) by MBOOLEAN:def 2 .= union {{x}.i,{y}.i} by A1,Def2 .= union {{x.i},{y}.i} by A1,Def1 .= union {{x.i},{y.i}} by A1,Def1 .= {x.i,y.i} by ZFMISC_1:26 .= {x,y}.i by A1,Def2; end; hence thesis; end; theorem :: ZFMISC_1:93 union { A,B } = A (\/) B proof now let i be object; assume A1: i in I; hence (union { A,B }).i = union ({A,B}.i) by MBOOLEAN:def 2 .= union {A.i,B.i} by A1,Def2 .= A.i \/ B.i by ZFMISC_1:75 .= (A (\/) B).i by A1,PBOOLE:def 4; end; hence thesis; end; theorem :: ZFMISC_1:37 {x} c= X iff x in X proof thus {x} c= X implies x in X proof assume A1: {x} c= X; let i; assume A2: i in I; then {x}.i c= X.i by A1; then {x.i} c= X.i by A2,Def1; hence thesis by ZFMISC_1:31; end; assume A3: x in X; let i; assume A4: i in I; then x.i in X.i by A3; then {x.i} c= X.i by ZFMISC_1:31; hence thesis by A4,Def1; end; theorem :: ZFMISC_1:38 {x1,x2} c= X iff x1 in X & x2 in X proof thus {x1,x2} c= X implies x1 in X & x2 in X proof assume A1: {x1,x2} c= X; thus x1 in X proof let i; assume A2: i in I; then {x1,x2}.i c= X.i by A1; then {x1.i,x2.i} c= X.i by A2,Def2; hence thesis by ZFMISC_1:32; end; let i; assume A3: i in I; then {x1,x2}.i c= X.i by A1; then {x1.i,x2.i} c= X.i by A3,Def2; hence thesis by ZFMISC_1:32; end; assume that A4: x1 in X and A5: x2 in X; let i; assume A6: i in I; then A7: x1.i in X.i by A4; x2.i in X.i by A5,A6; then {x1.i,x2.i} c= X.i by A7,ZFMISC_1:32; hence thesis by A6,Def2; end; theorem :: ZFMISC_1:42 A = EmptyMS I or A = {x1} or A = {x2} or A = {x1,x2} implies A c= {x1,x2} proof assume A1: A = EmptyMS I or A = {x1} or A = {x2} or A = {x1,x2}; let i such that A2: i in I; per cases by A1; suppose A = EmptyMS I; then A.i = {} by PBOOLE:5; then A.i c= {x1.i,x2.i} by ZFMISC_1:36; hence thesis by A2,Def2; end; suppose A = {x1}; then A.i = {x1.i} by A2,Def1; then A.i c= {x1.i,x2.i} by ZFMISC_1:36; hence thesis by A2,Def2; end; suppose A = {x2}; then A.i = {x2.i} by A2,Def1; then A.i c= {x1.i,x2.i} by ZFMISC_1:36; hence thesis by A2,Def2; end; suppose A = {x1,x2}; hence thesis; end; end; begin :: Sum of an unordered pairs (or a singelton) and a set theorem :: SETWISEO:6 x in A or x = B implies x in A (\/) {B} proof assume A1: x in A or x = B; let i such that A2: i in I; per cases by A1; suppose x in A; then x.i in A.i by A2; then x.i in A.i \/ {B.i} by ZFMISC_1:136; then x.i in A.i \/ {B}.i by A2,Def1; hence thesis by A2,PBOOLE:def 4; end; suppose x = B; then x.i in A.i \/ {B.i} by ZFMISC_1:136; then x.i in A.i \/ {B}.i by A2,Def1; hence thesis by A2,PBOOLE:def 4; end; end; theorem :: SETWISEO:8 A (\/) {x} c= B iff x in B & A c= B proof thus A (\/) {x} c= B implies x in B & A c= B proof assume A1: A (\/) {x} c= B; A2: now let i; assume A3: i in I; then (A (\/) {x}).i c= B.i by A1; then A.i \/ {x}.i c= B.i by A3,PBOOLE:def 4; hence A.i \/ {x.i} c= B.i by A3,Def1; end; thus x in B proof let i; assume i in I; then A.i \/ {x.i} c= B.i by A2; hence thesis by ZFMISC_1:137; end; let i; assume i in I; then A.i \/ {x.i} c= B.i by A2; hence thesis by ZFMISC_1:137; end; assume that A4: x in B and A5: A c= B; let i; assume A6: i in I; then A7: x.i in B.i by A4; A.i c= B.i by A5,A6; then A.i \/ {x.i} c= B.i by A7,ZFMISC_1:137; then A.i \/ {x}.i c= B.i by A6,Def1; hence thesis by A6,PBOOLE:def 4; end; theorem :: ZFMISC_1:45 {x} (\/) X = X implies x in X proof assume A1: {x} (\/) X = X; let i; assume A2: i in I; then {x.i} \/ X.i = {x}.i \/ X.i by Def1 .= X.i by A1,A2,PBOOLE:def 4; hence thesis by ZFMISC_1:39; end; theorem :: ZFMISC_1:46 x in X implies {x} (\/) X = X proof assume A1: x in X; now let i be object; assume A2: i in I; then A3: x.i in X.i by A1; thus ({x} (\/) X).i = {x}.i \/ X.i by A2,PBOOLE:def 4 .= {x.i} \/ X.i by A2,Def1 .= X.i by A3,ZFMISC_1:40; end; hence thesis; end; theorem :: ZFMISC_1:47, 48 {x,y} (\/) A = A iff x in A & y in A proof thus {x,y} (\/) A = A implies x in A & y in A proof assume A1: {x,y} (\/) A = A; thus x in A proof let i; assume A2: i in I; then {x.i,y.i} \/ A.i = {x,y}.i \/ A.i by Def2 .= A.i by A1,A2,PBOOLE:def 4; hence thesis by ZFMISC_1:41; end; let i; assume A3: i in I; then {x.i,y.i} \/ A.i = {x,y}.i \/ A.i by Def2 .= A.i by A1,A3,PBOOLE:def 4; hence thesis by ZFMISC_1:41; end; assume that A4: x in A and A5: y in A; now let i be object; assume A6: i in I; then A7: x.i in A.i by A4; A8: y.i in A.i by A5,A6; thus ({x,y} (\/) A).i = {x,y}.i \/ A.i by A6,PBOOLE:def 4 .= {x.i,y.i} \/ A.i by A6,Def2 .= A.i by A7,A8,ZFMISC_1:42; end; hence thesis; end; theorem :: ZFMISC_1:49 I is non empty implies {x} (\/) X <> EmptyMS I proof assume that A1: I is non empty and A2: {x} (\/) X = EmptyMS I; consider i being object such that A3: i in I by A1,XBOOLE_0:def 1; {x.i} \/ X.i <> {}; then {x}.i \/ X.i <> {} by A3,Def1; then ({x} (\/) X).i <> {} by A3,PBOOLE:def 4; hence contradiction by A2,PBOOLE:5; end; theorem :: ZFMISC_1:50 I is non empty implies {x,y} (\/) X <> EmptyMS I proof assume that A1: I is non empty and A2: {x,y} (\/) X = EmptyMS I; consider i being object such that A3: i in I by A1,XBOOLE_0:def 1; {x.i,y.i} \/ X.i <> {}; then {x,y}.i \/ X.i <> {} by A3,Def2; then ({x,y} (\/) X).i <> {} by A3,PBOOLE:def 4; hence contradiction by A2,PBOOLE:5; end; begin :: Intersection of an unordered pairs (or a singelton) and a set theorem :: ZFMISC_1:51 X (/\) {x} = {x} implies x in X proof assume A1: X (/\) {x} = {x}; let i; assume A2: i in I; then X.i /\ {x.i} = X.i /\ {x}.i by Def1 .= (X (/\) {x}).i by A2,PBOOLE:def 5 .= {x.i} by A1,A2,Def1; hence thesis by ZFMISC_1:45; end; theorem :: ZFMISC_1:52 x in X implies X (/\) {x} = {x} proof assume A1: x in X; now let i be object; assume A2: i in I; then A3: x.i in X.i by A1; thus (X (/\) {x}).i = X.i /\ {x}.i by A2,PBOOLE:def 5 .= X.i /\ {x.i} by A2,Def1 .= {x.i} by A3,ZFMISC_1:46 .= {x}.i by A2,Def1; end; hence X (/\) {x} = {x}; end; theorem :: ZFMISC_1:53, 63 x in X & y in X iff {x,y} (/\) X = {x,y} proof thus x in X & y in X implies {x,y} (/\) X = {x,y} proof assume that A1: x in X and A2: y in X; now let i be object; assume A3: i in I; then A4: x.i in X.i by A1; A5: y.i in X.i by A2,A3; thus ({x,y} (/\) X).i = {x,y}.i /\ X.i by A3,PBOOLE:def 5 .= {x.i,y.i} /\ X.i by A3,Def2 .= {x.i,y.i} by A4,A5,ZFMISC_1:47 .= {x,y}.i by A3,Def2; end; hence thesis; end; assume A6: {x,y} (/\) X = {x,y}; thus x in X proof let i; assume A7: i in I; then {x.i,y.i} /\ X.i = {x,y}.i /\ X.i by Def2 .= ({x,y} (/\) X).i by A7,PBOOLE:def 5 .= {x.i,y.i} by A6,A7,Def2; hence thesis by ZFMISC_1:55; end; let i; assume A8: i in I; then {x.i,y.i} /\ X.i = {x,y}.i /\ X.i by Def2 .= ({x,y} (/\) X).i by A8,PBOOLE:def 5 .= {x.i,y.i} by A6,A8,Def2; hence thesis by ZFMISC_1:55; end; theorem :: ZFMISC_1:54 I is non empty & {x} (/\) X = EmptyMS I implies not x in X proof assume that A1: I is non empty and A2: {x} (/\) X = EmptyMS I and A3: x in X; consider i being object such that A4: i in I by A1,XBOOLE_0:def 1; {x.i} /\ X.i = {x}.i /\ X.i by A4,Def1 .= ({x} (/\) X).i by A4,PBOOLE:def 5 .= {} by A2,PBOOLE:5; then {x.i} misses X.i by XBOOLE_0:def 7; then not x.i in X.i by ZFMISC_1:48; hence contradiction by A3,A4; end; theorem :: ZFMISC_1:55 I is non empty & {x,y} (/\) X = EmptyMS I implies not x in X & not y in X proof assume that A1: I is non empty and A2: {x,y} (/\) X = EmptyMS I; A3: now let i; assume A4: i in I; hence {x.i,y.i} /\ X.i = {x,y}.i /\ X.i by Def2 .= ({x,y} (/\) X).i by A4,PBOOLE:def 5 .= {} by A2,PBOOLE:5; end; thus not x in X proof assume A5: x in X; now consider i being object such that A6: i in I by A1,XBOOLE_0:def 1; take i; {x.i,y.i} /\ X.i = {} by A3,A6; then {x.i,y.i} misses X.i by XBOOLE_0:def 7; hence i in I & not x.i in X.i by A6,ZFMISC_1:49; end; hence contradiction by A5; end; assume A7: y in X; now consider i being object such that A8: i in I by A1,XBOOLE_0:def 1; take i; {x.i,y.i} /\ X.i = {} by A3,A8; then {x.i,y.i} misses X.i by XBOOLE_0:def 7; hence i in I & not y.i in X.i by A8,ZFMISC_1:49; end; hence contradiction by A7; end; begin :: Difference of an unordered pairs (or a singelton) and a set theorem :: ZFMISC_1:64 a y in X (\) {x} implies y in X proof assume A1: y in X (\) {x}; let i; assume A2: i in I; then y.i in (X (\) {x}).i by A1; then y.i in X.i \ {x}.i by A2,PBOOLE:def 6; then y.i in X.i \ {x.i} by A2,Def1; hence thesis by ZFMISC_1:56; end; theorem :: ZFMISC_1:64 b I is non empty & y in X (\) {x} implies y <> x proof assume that A1: I is non empty and A2: y in X (\) {x}; consider i being object such that A3: i in I by A1,XBOOLE_0:def 1; now take i; y.i in (X (\) {x}).i by A2,A3; then y.i in X.i \ {x}.i by A3,PBOOLE:def 6; then y.i in X.i \ {x.i} by A3,Def1; hence y.i <> x.i by ZFMISC_1:56; end; hence thesis; end; theorem :: ZFMISC_1:65 I is non empty & X (\) {x} = X implies not x in X proof assume that A1: I is non empty and A2: X (\) {x} = X and A3: x in X; A4: now let i; assume A5: i in I; hence X.i \ {x.i} = X.i \ {x}.i by Def1 .= X.i by A2,A5,PBOOLE:def 6; end; now consider i being object such that A6: i in I by A1,XBOOLE_0:def 1; take i; thus i in I by A6; X.i \ {x.i} = X.i by A4,A6; hence not x.i in X.i by ZFMISC_1:57; end; hence contradiction by A3; end; theorem :: ZFMISC_1:67 I is non empty & {x} (\) X = {x} implies not x in X proof assume that A1: I is non empty and A2: {x} (\) X = {x} and A3: x in X; consider i being object such that A4: i in I by A1,XBOOLE_0:def 1; {x.i} \ X.i = {x}.i \ X.i by A4,Def1 .= ({x} (\) X).i by A4,PBOOLE:def 6 .= {x.i} by A2,A4,Def1; then not x.i in X.i by ZFMISC_1:59; hence contradiction by A3,A4; end; theorem :: ZFMISC_1:68 {x} (\) X = EmptyMS I iff x in X proof thus {x} (\) X = EmptyMS I implies x in X proof assume A1: {x} (\) X = EmptyMS I; let i; assume A2: i in I; then {x.i} \ X.i = {x}.i \ X.i by Def1 .= ({x} (\) X).i by A2,PBOOLE:def 6 .= {} by A1,PBOOLE:5; hence thesis by ZFMISC_1:60; end; assume A3: x in X; now let i be object; assume A4: i in I; then A5: x.i in X.i by A3; thus ({x} (\) X).i = {x}.i \ X.i by A4,PBOOLE:def 6 .= {x.i} \ X.i by A4,Def1 .= {} by A5,ZFMISC_1:60 .= EmptyMS I.i by PBOOLE:5; end; hence thesis; end; theorem :: ZFMISC_1:70 I is non empty & {x,y} (\) X = {x} implies not x in X proof assume that A1: I is non empty and A2: {x,y} (\) X = {x}; consider i being object such that A3: i in I by A1,XBOOLE_0:def 1; {x.i,y.i} \ X.i = {x,y}.i \ X.i by A3,Def2 .= ({x,y} (\) X).i by A3,PBOOLE:def 6 .= {x.i} by A2,A3,Def1; then not x.i in X.i by ZFMISC_1:62; hence thesis by A3; end; theorem :: ZFMISC_1:72 I is non empty & {x,y} (\) X = {x,y} implies not x in X & not y in X proof assume I is non empty; then consider i being object such that A1: i in I by XBOOLE_0:def 1; assume A2: {x,y} (\) X = {x,y}; thus not x in X proof assume A3: x in X; {x.i,y.i} \ X.i = {x,y}.i \ X.i by A1,Def2 .= ({x,y} (\) X).i by A1,PBOOLE:def 6 .= {x.i,y.i} by A1,A2,Def2; then not x.i in X.i by ZFMISC_1:63; hence contradiction by A1,A3; end; assume A4: y in X; {x.i,y.i} \ X.i = {x,y}.i \ X.i by A1,Def2 .= ({x,y} (\) X).i by A1,PBOOLE:def 6 .= {x.i,y.i} by A1,A2,Def2; then not y.i in X.i by ZFMISC_1:63; hence contradiction by A1,A4; end; theorem :: ZFMISC_1:73 {x,y} (\) X = EmptyMS I iff x in X & y in X proof thus {x,y} (\) X = EmptyMS I implies x in X & y in X proof assume A1: {x,y} (\) X = EmptyMS I; thus x in X proof let i; assume A2: i in I; then {x.i,y.i} \ X.i = {x,y}.i \ X.i by Def2 .= ({x,y} (\) X).i by A2,PBOOLE:def 6 .= {} by A1,PBOOLE:5; hence thesis by ZFMISC_1:64; end; let i; assume A3: i in I; then {x.i,y.i} \ X.i = {x,y}.i \ X.i by Def2 .= ({x,y} (\) X).i by A3,PBOOLE:def 6 .= {} by A1,PBOOLE:5; hence thesis by ZFMISC_1:64; end; assume that A4: x in X and A5: y in X; now let i be object; assume A6: i in I; then A7: x.i in X.i by A4; A8: y.i in X.i by A5,A6; thus ({x,y} (\) X).i = {x,y}.i \ X.i by A6,PBOOLE:def 6 .= {x.i,y.i} \ X.i by A6,Def2 .= {} by A7,A8,ZFMISC_1:64 .= EmptyMS I.i by PBOOLE:5; end; hence thesis; end; theorem :: ZFMISC_1:75 X = EmptyMS I or X = {x} or X = {y} or X = {x,y} implies X (\) {x,y} = EmptyMS I proof assume A1: X = EmptyMS I or X = {x} or X = {y} or X = {x,y}; now let i be object such that A2: i in I; per cases by A1; suppose X = EmptyMS I; then A3: X.i = {} by PBOOLE:5; thus (X (\) {x,y}).i = X.i \ {x,y}.i by A2,PBOOLE:def 6 .= EmptyMS I.i by A3,PBOOLE:5; end; suppose X = {x}; then A4: X.i = {x.i} by A2,Def1; thus (X (\) {x,y}).i = X.i \ {x,y}.i by A2,PBOOLE:def 6 .= X.i \ {x.i,y.i} by A2,Def2 .= {} by A4,ZFMISC_1:66 .= EmptyMS I.i by PBOOLE:5; end; suppose X = {y}; then A5: X.i = {y.i} by A2,Def1; thus (X (\) {x,y}).i = X.i \ {x,y}.i by A2,PBOOLE:def 6 .= X.i \ {x.i,y.i} by A2,Def2 .= {} by A5,ZFMISC_1:66 .= EmptyMS I.i by PBOOLE:5; end; suppose X = {x,y}; then A6: X.i = {x.i,y.i} by A2,Def2; thus (X (\) {x,y}).i = X.i \ {x,y}.i by A2,PBOOLE:def 6 .= X.i \ {x.i,y.i} by A2,Def2 .= {} by A6,ZFMISC_1:66 .= EmptyMS I.i by PBOOLE:5; end; end; hence thesis; end; begin :: Cartesian product theorem :: ZFMISC_1:113 X = EmptyMS I or Y = EmptyMS I implies [|X,Y|] = EmptyMS I proof assume A1: X = EmptyMS I or Y = EmptyMS I; per cases by A1; suppose A2: X = EmptyMS I; now let i be object; assume A3: i in I; A4: X.i = {} by A2,PBOOLE:5; thus [|X,Y|].i = [:X.i,Y.i:] by A3,PBOOLE:def 16 .= {} by A4,ZFMISC_1:90 .= EmptyMS I.i by PBOOLE:5; end; hence thesis; end; suppose A5: Y = EmptyMS I; now let i be object; assume A6: i in I; A7: Y.i = {} by A5,PBOOLE:5; thus [|X,Y|].i = [:X.i,Y.i:] by A6,PBOOLE:def 16 .= {} by A7,ZFMISC_1:90 .= EmptyMS I.i by PBOOLE:5; end; hence thesis; end; end; theorem :: ZFMISC_1:114 X is non-empty & Y is non-empty & [|X,Y|] = [|Y,X|] implies X = Y proof assume that A1: X is non-empty and A2: Y is non-empty and A3: [|X,Y|] = [|Y,X|]; now let i be object; assume A4: i in I; then A5: X.i is non empty by A1; A6: Y.i is non empty by A2,A4; [:X.i,Y.i:] = [|X,Y|].i by A4,PBOOLE:def 16 .= [:Y.i,X.i:] by A3,A4,PBOOLE:def 16; hence X.i = Y.i by A5,A6,ZFMISC_1:91; end; hence thesis; end; theorem :: ZFMISC_1:115 [|X,X|] = [|Y,Y|] implies X = Y proof assume A1: [|X,X|] = [|Y,Y|]; now let i be object; assume A2: i in I; then [:X.i,X.i:] = [|X,X|].i by PBOOLE:def 16 .= [:Y.i,Y.i:] by A1,A2,PBOOLE:def 16; hence X.i = Y.i by ZFMISC_1:92; end; hence thesis; end; theorem :: ZFMISC_1:117 Z is non-empty & ([|X,Z|] c= [|Y,Z|] or [|Z,X|] c= [|Z,Y|]) implies X c= Y proof assume that A1: Z is non-empty and A2: [|X,Z|] c= [|Y,Z|] or [|Z,X|] c= [|Z,Y|]; per cases by A2; suppose A3: [|X,Z|] c= [|Y,Z|]; let i; assume A4: i in I; then A5: Z.i is non empty by A1; [|X,Z|].i c= [|Y,Z|].i by A3,A4; then [:X.i,Z.i:] c= [|Y,Z|].i by A4,PBOOLE:def 16; then [:X.i,Z.i:] c= [:Y.i,Z.i:] by A4,PBOOLE:def 16; hence thesis by A5,ZFMISC_1:94; end; suppose A6: [|Z,X|] c= [|Z,Y|]; let i; assume A7: i in I; then A8: Z.i is non empty by A1; [|Z,X|].i c= [|Z,Y|].i by A6,A7; then [:Z.i,X.i:] c= [|Z,Y|].i by A7,PBOOLE:def 16; then [:Z.i,X.i:] c= [:Z.i,Y.i:] by A7,PBOOLE:def 16; hence thesis by A8,ZFMISC_1:94; end; end; theorem :: ZFMISC_1:118 X c= Y implies [|X,Z|] c= [|Y,Z|] & [|Z,X|] c= [|Z,Y|] proof assume A1: X c= Y; thus [|X,Z|] c= [|Y,Z|] proof let i; assume A2: i in I; then X.i c= Y.i by A1; then [:X.i,Z.i:] c= [:Y.i,Z.i:] by ZFMISC_1:95; then [|X,Z|].i c= [:Y.i,Z.i:] by A2,PBOOLE:def 16; hence thesis by A2,PBOOLE:def 16; end; let i; assume A3: i in I; then X.i c= Y.i by A1; then [:Z.i,X.i:] c= [:Z.i,Y.i:] by ZFMISC_1:95; then [|Z,X|].i c= [:Z.i,Y.i:] by A3,PBOOLE:def 16; hence thesis by A3,PBOOLE:def 16; end; theorem :: ZFMISC_1:119 x1 c= A & x2 c= B implies [|x1,x2|] c= [|A,B|] proof assume that A1: x1 c= A and A2: x2 c= B; let i; assume A3: i in I; then A4: x1.i c= A.i by A1; x2.i c= B.i by A2,A3; then [:x1.i,x2.i:] c= [:A.i,B.i:] by A4,ZFMISC_1:96; then [|x1,x2|].i c= [:A.i,B.i:] by A3,PBOOLE:def 16; hence thesis by A3,PBOOLE:def 16; end; theorem :: ZFMISC_1:120 [|X (\/) Y, Z|] = [|X, Z|] (\/) [|Y, Z|] & [|Z, X (\/) Y|] = [|Z, X|] (\/) [|Z, Y|] proof now let i be object; assume A1: i in I; hence [|X (\/) Y, Z|].i = [:(X (\/) Y).i, Z.i:] by PBOOLE:def 16 .= [:X.i \/ Y.i, Z.i:] by A1,PBOOLE:def 4 .= [:X.i, Z.i:] \/ [:Y.i, Z.i:] by ZFMISC_1:97 .= [|X,Z|].i \/ [:Y.i, Z.i:] by A1,PBOOLE:def 16 .= [|X,Z|].i \/ [|Y,Z|].i by A1,PBOOLE:def 16 .= ([|X, Z|] (\/) [|Y, Z|]).i by A1,PBOOLE:def 4; end; hence [|X (\/) Y, Z|] = [|X, Z|] (\/) [|Y, Z|]; now let i be object; assume A2: i in I; hence [|Z, X (\/) Y|].i = [:Z.i, (X (\/) Y).i:] by PBOOLE:def 16 .= [:Z.i, X.i \/ Y.i:] by A2,PBOOLE:def 4 .= [:Z.i,X.i:] \/ [:Z.i,Y.i:] by ZFMISC_1:97 .= [|Z,X|].i \/ [:Z.i,Y.i:] by A2,PBOOLE:def 16 .= [|Z,X|].i \/ [|Z,Y|].i by A2,PBOOLE:def 16 .= ([|Z,X|] (\/) [|Z,Y|]).i by A2,PBOOLE:def 4; end; hence thesis; end; theorem :: ZFMISC_1:121 [|x1 (\/) x2, A (\/) B|] = [|x1,A|] (\/) [|x1,B|] (\/) [|x2,A|] (\/) [|x2,B|] proof now let i be object; assume A1: i in I; hence [|x1 (\/) x2, A (\/) B|].i = [:(x1 (\/) x2).i,(A (\/) B).i:] by PBOOLE:def 16 .= [:x1.i \/ x2.i, (A (\/) B).i:] by A1,PBOOLE:def 4 .= [:x1.i \/ x2.i, A.i \/ B.i:] by A1,PBOOLE:def 4 .= [:x1.i,A.i:] \/ [:x1.i,B.i:] \/ [:x2.i,A.i:] \/ [:x2.i,B.i:] by ZFMISC_1:98 .= [|x1,A|].i \/ [:x1.i,B.i:] \/ [:x2.i,A.i:] \/ [:x2.i,B.i:] by A1,PBOOLE:def 16 .= [|x1,A|].i \/ [|x1,B|].i \/ [:x2.i,A.i:] \/ [:x2.i,B.i:] by A1,PBOOLE:def 16 .= [|x1,A|].i \/ [|x1,B|].i \/ [|x2,A|].i \/ [:x2.i,B.i:] by A1,PBOOLE:def 16 .= [|x1,A|].i \/ [|x1,B|].i \/ [|x2,A|].i \/ [|x2,B|].i by A1,PBOOLE:def 16 .= ([|x1,A|] (\/) [|x1,B|]).i \/ [|x2,A|].i \/ [|x2,B|].i by A1,PBOOLE:def 4 .= ([|x1,A|] (\/) [|x1,B|] (\/) [|x2,A|]).i \/ [|x2,B|].i by A1,PBOOLE:def 4 .= ([|x1,A|] (\/) [|x1,B|] (\/) [|x2,A|] (\/) [|x2,B|]).i by A1,PBOOLE:def 4; end; hence thesis; end; theorem :: ZFMISC_1:122 [|X (/\) Y, Z|] = [|X, Z|] (/\) [|Y, Z|] & [|Z, X (/\) Y|] = [|Z, X|] (/\) [|Z, Y|] proof now let i be object; assume A1: i in I; hence [|X (/\) Y, Z|].i = [:(X (/\) Y).i,Z.i:] by PBOOLE:def 16 .= [:X.i /\ Y.i,Z.i:] by A1,PBOOLE:def 5 .= [:X.i,Z.i:] /\ [:Y.i,Z.i:] by ZFMISC_1:99 .= [|X,Z|].i /\ [:Y.i,Z.i:] by A1,PBOOLE:def 16 .= [|X,Z|].i /\ [|Y,Z|].i by A1,PBOOLE:def 16 .= ([|X, Z|] (/\) [|Y, Z|]).i by A1,PBOOLE:def 5; end; hence [|X (/\) Y, Z|] = [|X, Z|] (/\) [|Y, Z|]; now let i be object; assume A2: i in I; hence [|Z,X (/\) Y|].i = [:Z.i,(X (/\) Y).i:] by PBOOLE:def 16 .= [:Z.i,X.i /\ Y.i:] by A2,PBOOLE:def 5 .= [:Z.i,X.i:] /\ [:Z.i,Y.i:] by ZFMISC_1:99 .= [|Z,X|].i /\ [:Z.i,Y.i:] by A2,PBOOLE:def 16 .= [|Z,X|].i /\ [|Z,Y|].i by A2,PBOOLE:def 16 .= ([|Z,X|] (/\) [|Z,Y|]).i by A2,PBOOLE:def 5; end; hence thesis; end; theorem :: ZFMISC_1:123 [|x1 (/\) x2, A (/\) B|] = [|x1,A|] (/\) [|x2, B|] proof now let i be object; assume A1: i in I; hence [|x1 (/\) x2, A (/\) B|].i = [:(x1 (/\) x2).i,(A (/\) B).i:] by PBOOLE:def 16 .= [:x1.i /\ x2.i,(A (/\) B).i:] by A1,PBOOLE:def 5 .= [:x1.i /\ x2.i,A.i /\ B.i:] by A1,PBOOLE:def 5 .= [:x1.i,A.i:] /\ [:x2.i,B.i:] by ZFMISC_1:100 .= [|x1,A|].i /\ [:x2.i,B.i:] by A1,PBOOLE:def 16 .= [|x1,A|].i /\ [|x2,B|].i by A1,PBOOLE:def 16 .= ([|x1,A|] (/\) [|x2, B|]).i by A1,PBOOLE:def 5; end; hence thesis; end; theorem :: ZFMISC_1:124 A c= X & B c= Y implies [|A,Y|] (/\) [|X,B|] = [|A,B|] proof assume that A1: A c= X and A2: B c= Y; now let i be object; assume A3: i in I; then A4: A.i c= X.i by A1; A5: B.i c= Y.i by A2,A3; thus ([|A,Y|] (/\) [|X,B|]).i = [|A,Y|].i /\ [|X,B|].i by A3,PBOOLE:def 5 .= [:A.i,Y.i:] /\ [|X,B|].i by A3,PBOOLE:def 16 .= [:A.i,Y.i:] /\ [:X.i,B.i:] by A3,PBOOLE:def 16 .= [:A.i,B.i:] by A4,A5,ZFMISC_1:101 .= [|A,B|].i by A3,PBOOLE:def 16; end; hence thesis; end; theorem :: ZFMISC_1:125 [|X (\) Y, Z|] = [|X, Z|] (\) [|Y, Z|] & [|Z, X (\) Y|] = [|Z, X|] (\) [|Z, Y|] proof now let i be object; assume A1: i in I; hence [|X (\) Y, Z|].i = [:(X (\) Y).i,Z.i:] by PBOOLE:def 16 .= [:X.i \ Y.i,Z.i:] by A1,PBOOLE:def 6 .= [:X.i,Z.i:] \ [:Y.i,Z.i:] by ZFMISC_1:102 .= [|X,Z|].i \ [:Y.i,Z.i:] by A1,PBOOLE:def 16 .= [|X,Z|].i \ [|Y,Z|].i by A1,PBOOLE:def 16 .= ([|X, Z|] (\) [|Y, Z|]).i by A1,PBOOLE:def 6; end; hence [|X (\) Y, Z|] = [|X, Z|] (\) [|Y, Z|]; now let i be object; assume A2: i in I; hence [|Z,X (\) Y|].i = [:Z.i,(X (\) Y).i:] by PBOOLE:def 16 .= [:Z.i,X.i \ Y.i:] by A2,PBOOLE:def 6 .= [:Z.i,X.i:] \ [:Z.i,Y.i:] by ZFMISC_1:102 .= [|Z,X|].i \ [:Z.i,Y.i:] by A2,PBOOLE:def 16 .= [|Z,X|].i \ [|Z,Y|].i by A2,PBOOLE:def 16 .= ([|Z,X|] (\) [|Z,Y|]).i by A2,PBOOLE:def 6; end; hence thesis; end; theorem :: ZFMISC_1:126 [|x1,x2|] (\) [|A,B|] = [|x1(\)A,x2|] (\/) [|x1,x2(\)B|] proof now let i be object; assume A1: i in I; hence ([|x1,x2|] (\) [|A,B|]).i = [|x1,x2|].i \ [|A,B|].i by PBOOLE:def 6 .= [:x1.i,x2.i:] \ [|A,B|].i by A1,PBOOLE:def 16 .= [:x1.i,x2.i:] \ [:A.i,B.i:] by A1,PBOOLE:def 16 .= [:x1.i\A.i,x2.i:] \/ [:x1.i,x2.i\B.i:] by ZFMISC_1:103 .= [:(x1(\)A).i,x2.i:] \/ [:x1.i,x2.i\B.i:] by A1,PBOOLE:def 6 .= [:(x1(\)A).i,x2.i:] \/ [:x1.i,(x2(\)B).i:] by A1,PBOOLE:def 6 .= [|x1(\)A,x2|].i \/ [:x1.i,(x2(\)B).i:] by A1,PBOOLE:def 16 .= [|x1(\)A,x2|].i \/ [|x1,x2(\)B|].i by A1,PBOOLE:def 16 .= ([|x1(\)A,x2|] (\/) [|x1,x2(\)B|]).i by A1,PBOOLE:def 4; end; hence thesis; end; theorem :: ZFMISC_1:127 x1 (/\) x2 = EmptyMS I or A (/\) B = EmptyMS I implies [|x1,A|] (/\) [|x2,B|] = EmptyMS I proof assume A1: x1 (/\) x2 = EmptyMS I or A (/\) B= EmptyMS I; per cases by A1; suppose A2: x1 (/\) x2 = EmptyMS I; now let i be object; assume A3: i in I; then x1.i /\ x2.i = (x1 (/\) x2).i by PBOOLE:def 5 .= {} by A2,PBOOLE:5; then x1.i misses x2.i by XBOOLE_0:def 7; then A4: [:x1.i,A.i:] misses [:x2.i,B.i:] by ZFMISC_1:104; thus ([|x1,A|] (/\) [|x2,B|]).i = [|x1,A|].i /\ [|x2,B|].i by A3,PBOOLE:def 5 .= [:x1.i,A.i:] /\ [|x2,B|].i by A3,PBOOLE:def 16 .= [:x1.i,A.i:] /\ [:x2.i,B.i:] by A3,PBOOLE:def 16 .= {} by A4,XBOOLE_0:def 7 .= EmptyMS I.i by PBOOLE:5; end; hence thesis; end; suppose A5: A (/\) B = EmptyMS I; now let i be object; assume A6: i in I; then A.i /\ B.i = (A (/\) B).i by PBOOLE:def 5 .= {} by A5,PBOOLE:5; then A.i misses B.i by XBOOLE_0:def 7; then A7: [:x1.i,A.i:] misses [:x2.i,B.i:] by ZFMISC_1:104; thus ([|x1,A|] (/\) [|x2,B|]).i = [|x1,A|].i /\ [|x2,B|].i by A6,PBOOLE:def 5 .= [:x1.i,A.i:] /\ [|x2,B|].i by A6,PBOOLE:def 16 .= [:x1.i,A.i:] /\ [:x2.i,B.i:] by A6,PBOOLE:def 16 .= {} by A7,XBOOLE_0:def 7 .= EmptyMS I.i by PBOOLE:5; end; hence thesis; end; end; theorem :: ZFMISC_1:130 X is non-empty implies [|{x},X|] is non-empty & [|X,{x}|] is non-empty proof assume A1: X is non-empty; thus [|{x},X|] is non-empty proof let i be object; assume A2: i in I; then X.i is non empty by A1; then [:{x.i},X.i:] is non empty by ZFMISC_1:107; then [:{x}.i,X.i:] is non empty by A2,Def1; hence thesis by A2,PBOOLE:def 16; end; let i be object; assume A3: i in I; then X.i is non empty by A1; then [:X.i,{x.i}:] is non empty by ZFMISC_1:107; then [:X.i,{x}.i:] is non empty by A3,Def1; hence thesis by A3,PBOOLE:def 16; end; theorem :: ZFMISC_1:132 [|{x,y},X|] = [|{x},X|] (\/) [|{y},X|] & [|X,{x,y}|] = [|X,{x}|] (\/) [|X,{y}|] proof now let i be object; assume A1: i in I; hence [|{x,y},X|].i = [:{x,y}.i,X.i:] by PBOOLE:def 16 .= [:{x.i,y.i},X.i:] by A1,Def2 .= [:{x.i},X.i:] \/ [:{y.i},X.i:] by ZFMISC_1:109 .= [:{x}.i,X.i:] \/ [:{y.i},X.i:] by A1,Def1 .= [:{x}.i,X.i:] \/ [:{y}.i,X.i:] by A1,Def1 .= [|{x},X|].i \/ [:{y}.i,X.i:] by A1,PBOOLE:def 16 .= [|{x},X|].i \/ [|{y},X|].i by A1,PBOOLE:def 16 .= ([|{x},X|] (\/) [|{y},X|]).i by A1,PBOOLE:def 4; end; hence [|{x,y},X|] = [|{x},X|] (\/) [|{y},X|]; now let i be object; assume A2: i in I; hence [|X,{x,y}|].i = [:X.i,{x,y}.i:] by PBOOLE:def 16 .= [:X.i,{x.i,y.i}:] by A2,Def2 .= [:X.i,{x.i}:] \/ [:X.i,{y.i}:] by ZFMISC_1:109 .= [:X.i,{x}.i:] \/ [:X.i,{y.i}:] by A2,Def1 .= [:X.i,{x}.i:] \/ [:X.i,{y}.i:] by A2,Def1 .= [|X,{x}|].i \/ [:X.i,{y}.i:] by A2,PBOOLE:def 16 .= [|X,{x}|].i \/ [|X,{y}|].i by A2,PBOOLE:def 16 .= ([|X,{x}|] (\/) [|X,{y}|]).i by A2,PBOOLE:def 4; end; hence thesis; end; theorem :: ZFMISC_1:134 x1 is non-empty & A is non-empty & [|x1,A|] = [|x2,B|] implies x1 = x2 & A = B proof assume that A1: x1 is non-empty and A2: A is non-empty and A3: [|x1,A|] = [|x2,B|]; now let i be object; assume A4: i in I; then A5: x1.i is non empty by A1; A6: A.i is non empty by A2,A4; [:x1.i,A.i:] = [|x1,A|].i by A4,PBOOLE:def 16 .= [:x2.i,B.i:] by A3,A4,PBOOLE:def 16; hence x1.i = x2.i by A5,A6,ZFMISC_1:110; end; hence x1 = x2; now let i be object; assume A7: i in I; then A8: x1.i is non empty by A1; A9: A.i is non empty by A2,A7; [:x1.i,A.i:] = [|x1,A|].i by A7,PBOOLE:def 16 .= [:x2.i,B.i:] by A3,A7,PBOOLE:def 16; hence A.i = B.i by A8,A9,ZFMISC_1:110; end; hence thesis; end; theorem :: ZFMISC_1:116, 135 X c= [|X,Y|] or X c= [|Y,X|] implies X = EmptyMS I proof assume A1: X c= [|X,Y|] or X c= [|Y,X|]; per cases by A1; suppose A2: X c= [|X,Y|]; now let i be object; assume A3: i in I; then X.i c= [|X,Y|].i by A2; then X.i c= [:X.i,Y.i:] by A3,PBOOLE:def 16; hence X.i = {} by ZFMISC_1:111 .= EmptyMS I.i by PBOOLE:5; end; hence thesis; end; suppose A4: X c= [|Y,X|]; now let i be object; assume A5: i in I; then X.i c= [|Y,X|].i by A4; then X.i c= [:Y.i,X.i:] by A5,PBOOLE:def 16; hence X.i = {} by ZFMISC_1:111 .= EmptyMS I.i by PBOOLE:5; end; hence thesis; end; end; theorem :: BORSUK_1:2 A in [|x,y|] & A in [|X,Y|] implies A in [|x (/\) X, y (/\) Y|] proof assume that A1: A in [|x,y|] and A2: A in [|X,Y|]; let i; assume A3: i in I; then A4: A.i in [|x,y|].i by A1; A5: A.i in [|X,Y|].i by A2,A3; A6: A.i in [:x.i,y.i:] by A3,A4,PBOOLE:def 16; A.i in [:X.i,Y.i:] by A3,A5,PBOOLE:def 16; then A.i in [:x.i /\ X.i, y.i /\ Y.i:] by A6,ZFMISC_1:113; then A.i in [:(x (/\) X).i, y.i /\ Y.i:] by A3,PBOOLE:def 5; then A.i in [:(x (/\) X).i, (y (/\) Y).i:] by A3,PBOOLE:def 5; hence thesis by A3,PBOOLE:def 16; end; theorem :: BORSUK_1:7 [|x,X|] c= [|y,Y|] & [|x,X|] is non-empty implies x c= y & X c= Y proof assume that A1: [|x,X|] c= [|y,Y|] and A2: [|x,X|] is non-empty; thus x c= y proof let i; assume A3: i in I; then [|x,X|].i c= [|y,Y|].i by A1; then [:x.i,X.i:] c= [|y,Y|].i by A3,PBOOLE:def 16; then A4: [:x.i,X.i:] c= [:y.i,Y.i:] by A3,PBOOLE:def 16; [|x,X|].i is non empty by A2,A3; then [:x.i,X.i:] is non empty by A3,PBOOLE:def 16; hence thesis by A4,ZFMISC_1:114; end; let i; assume A5: i in I; then [|x,X|].i c= [|y,Y|].i by A1; then [:x.i,X.i:] c= [|y,Y|].i by A5,PBOOLE:def 16; then A6: [:x.i,X.i:] c= [:y.i,Y.i:] by A5,PBOOLE:def 16; [|x,X|].i is non empty by A2,A5; then [:x.i,X.i:] is non empty by A5,PBOOLE:def 16; hence thesis by A6,ZFMISC_1:114; end; theorem :: REALSET1:4 A c= X implies [|A,A|] c= [|X,X|] proof assume A1: A c= X; let i; assume A2: i in I; then A.i c= X.i by A1; then [:A.i,A.i:] c= [:X.i,X.i:] by ZFMISC_1:96; then [|A,A|].i c= [:X.i,X.i:] by A2,PBOOLE:def 16; hence thesis by A2,PBOOLE:def 16; end; theorem :: SYSREL:17 X (/\) Y = EmptyMS I implies [|X,Y|] (/\) [|Y,X|] = EmptyMS I proof assume A1: X (/\) Y = EmptyMS I; now let i be object; assume A2: i in I; then X.i /\ Y.i = (X (/\) Y).i by PBOOLE:def 5 .= {} by A1,PBOOLE:5; then X.i misses Y.i by XBOOLE_0:def 7; then A3: [:X.i,Y.i:] misses [:Y.i,X.i:] by ZFMISC_1:104; thus ([|X,Y|] (/\) [|Y,X|]).i = [|X,Y|].i /\ [|Y,X|].i by A2,PBOOLE:def 5 .= [:X.i,Y.i:] /\ [|Y,X|].i by A2,PBOOLE:def 16 .= [:X.i,Y.i:] /\ [:Y.i,X.i:] by A2,PBOOLE:def 16 .= {} by A3,XBOOLE_0:def 7 .= EmptyMS I.i by PBOOLE:5; end; hence thesis; end; theorem :: ALTCAT_1:1 A is non-empty & ([|A,B|] c= [|X,Y|] or [|B,A|] c= [|Y,X|]) implies B c= Y proof assume that A1: A is non-empty and A2: [|A,B|] c= [|X,Y|] or [|B,A|] c= [|Y,X|]; per cases by A2; suppose A3: [|A,B|] c= [|X,Y|]; let i; assume A4: i in I; then [|A,B|].i c= [|X,Y|].i by A3; then [:A.i,B.i:] c= [|X,Y|].i by A4,PBOOLE:def 16; then A5: [:A.i,B.i:] c= [:X.i,Y.i:] by A4,PBOOLE:def 16; A.i is non empty by A1,A4; hence thesis by A5,ZFMISC_1:115; end; suppose A6: [|B,A|] c= [|Y,X|]; let i; assume A7: i in I; then [|B,A|].i c= [|Y,X|].i by A6; then [:B.i,A.i:] c= [|Y,X|].i by A7,PBOOLE:def 16; then A8: [:B.i,A.i:] c= [:Y.i,X.i:] by A7,PBOOLE:def 16; A.i is non empty by A1,A7; hence thesis by A8,ZFMISC_1:115; end; end; theorem :: PARTFUN1:1 x c= [|A,B|] & y c= [|X,Y|] implies x (\/) y c= [|A (\/) X,B (\/) Y|] proof assume that A1: x c= [|A,B|] and A2: y c= [|X,Y|]; let i; assume A3: i in I; then A4: x.i c= [|A,B|].i by A1; A5: y.i c= [|X,Y|].i by A2,A3; A6: x.i c= [:A.i,B.i:] by A3,A4,PBOOLE:def 16; y.i c= [:X.i,Y.i:] by A3,A5,PBOOLE:def 16; then x.i \/ y.i c= [:A.i \/ X.i,B.i \/ Y.i:] by A6,ZFMISC_1:119; then (x (\/) y).i c= [:A.i \/ X.i,B.i \/ Y.i:] by A3,PBOOLE:def 4; then (x (\/) y).i c= [:(A (\/) X).i,B.i \/ Y.i:] by A3,PBOOLE:def 4; then (x (\/) y).i c= [:(A (\/) X).i,(B (\/) Y).i:] by A3,PBOOLE:def 4; hence thesis by A3,PBOOLE:def 16; end; begin :: Addenda :: from AUTALG_1 definition let I, A, B; pred A is_transformable_to B means for i be set st i in I holds B.i = {} implies A.i = {}; reflexivity; end;