:: ZF_FUND1 semantic presentation
definition
let c1,
c2 be
set ;
func c1 (#) c2 -> set means :
Def1:
:: ZF_FUND1:def 1
for
b1 being
set holds
(
b1 in a3 iff ex
b2,
b3,
b4 being
set st
(
b1 = [b2,b4] &
[b2,b3] in a1 &
[b3,b4] in a2 ) );
existence
ex b1 being set st
for b2 being set holds
( b2 in b1 iff ex b3, b4, b5 being set st
( b2 = [b3,b5] & [b3,b4] in c1 & [b4,b5] in c2 ) )
uniqueness
for b1, b2 being set st ( for b3 being set holds
( b3 in b1 iff ex b4, b5, b6 being set st
( b3 = [b4,b6] & [b4,b5] in c1 & [b5,b6] in c2 ) ) ) & ( for b3 being set holds
( b3 in b2 iff ex b4, b5, b6 being set st
( b3 = [b4,b6] & [b4,b5] in c1 & [b5,b6] in c2 ) ) ) holds
b1 = b2
end;
:: deftheorem Def1 defines (#) ZF_FUND1:def 1 :
for
b1,
b2,
b3 being
set holds
(
b3 = b1 (#) b2 iff for
b4 being
set holds
(
b4 in b3 iff ex
b5,
b6,
b7 being
set st
(
b4 = [b5,b7] &
[b5,b6] in b1 &
[b6,b7] in b2 ) ) );
:: deftheorem Def2 defines decode ZF_FUND1:def 2 :
:: deftheorem Def3 defines x". ZF_FUND1:def 3 :
Lemma4:
( dom decode = omega & rng decode = VAR & decode is one-to-one & decode " is one-to-one & dom (decode " ) = VAR & rng (decode " ) = omega )
:: deftheorem Def4 defines code ZF_FUND1:def 4 :
definition
let c1 be
ZF-formula;
let c2 be non
empty set ;
func Diagram c1,
c2 -> set means :
Def5:
:: ZF_FUND1:def 5
for
b1 being
set holds
(
b1 in a3 iff ex
b2 being
Function of
VAR ,
a2 st
(
b1 = (b2 * decode ) | (code (Free a1)) &
b2 in St a1,
a2 ) );
existence
ex b1 being set st
for b2 being set holds
( b2 in b1 iff ex b3 being Function of VAR ,c2 st
( b2 = (b3 * decode ) | (code (Free c1)) & b3 in St c1,c2 ) )
uniqueness
for b1, b2 being set st ( for b3 being set holds
( b3 in b1 iff ex b4 being Function of VAR ,c2 st
( b3 = (b4 * decode ) | (code (Free c1)) & b4 in St c1,c2 ) ) ) & ( for b3 being set holds
( b3 in b2 iff ex b4 being Function of VAR ,c2 st
( b3 = (b4 * decode ) | (code (Free c1)) & b4 in St c1,c2 ) ) ) holds
b1 = b2
end;
:: deftheorem Def5 defines Diagram ZF_FUND1:def 5 :
definition
let c1 be
Universe;
let c2 be
Subclass of
c1;
attr a2 is
closed_wrt_A1 means :
Def6:
:: ZF_FUND1:def 6
for
b1 being
Element of
a1 st
b1 in a2 holds
{ {[(0-element_of a1),b2],[(1-element_of a1),b3]} where B is Element of a1, B is Element of a1 : ( b2 in b3 & b2 in b1 & b3 in b1 ) } in a2;
attr a2 is
closed_wrt_A2 means :
Def7:
:: ZF_FUND1:def 7
for
b1,
b2 being
Element of
a1 st
b1 in a2 &
b2 in a2 holds
{b1,b2} in a2;
attr a2 is
closed_wrt_A3 means :
Def8:
:: ZF_FUND1:def 8
for
b1 being
Element of
a1 st
b1 in a2 holds
union b1 in a2;
attr a2 is
closed_wrt_A4 means :
Def9:
:: ZF_FUND1:def 9
for
b1,
b2 being
Element of
a1 st
b1 in a2 &
b2 in a2 holds
{ {[b3,b4]} where B is Element of a1, B is Element of a1 : ( b3 in b1 & b4 in b2 ) } in a2;
attr a2 is
closed_wrt_A5 means :
Def10:
:: ZF_FUND1:def 10
for
b1,
b2 being
Element of
a1 st
b1 in a2 &
b2 in a2 holds
{ (b3 \/ b4) where B is Element of a1, B is Element of a1 : ( b3 in b1 & b4 in b2 ) } in a2;
attr a2 is
closed_wrt_A6 means :
Def11:
:: ZF_FUND1:def 11
for
b1,
b2 being
Element of
a1 st
b1 in a2 &
b2 in a2 holds
{ (b3 \ b4) where B is Element of a1, B is Element of a1 : ( b3 in b1 & b4 in b2 ) } in a2;
attr a2 is
closed_wrt_A7 means :
Def12:
:: ZF_FUND1:def 12
for
b1,
b2 being
Element of
a1 st
b1 in a2 &
b2 in a2 holds
{ (b3 (#) b4) where B is Element of a1, B is Element of a1 : ( b3 in b1 & b4 in b2 ) } in a2;
end;
:: deftheorem Def6 defines closed_wrt_A1 ZF_FUND1:def 6 :
:: deftheorem Def7 defines closed_wrt_A2 ZF_FUND1:def 7 :
:: deftheorem Def8 defines closed_wrt_A3 ZF_FUND1:def 8 :
:: deftheorem Def9 defines closed_wrt_A4 ZF_FUND1:def 9 :
:: deftheorem Def10 defines closed_wrt_A5 ZF_FUND1:def 10 :
:: deftheorem Def11 defines closed_wrt_A6 ZF_FUND1:def 11 :
:: deftheorem Def12 defines closed_wrt_A7 ZF_FUND1:def 12 :
:: deftheorem Def13 defines closed_wrt_A1-A7 ZF_FUND1:def 13 :
Lemma14:
for b1 being Element of omega holds b1 = x". (x. (card b1))
Lemma15:
for b1 being finite Subset of omega
for b2 being non empty set
for b3 being Function of VAR ,b2 holds
( dom ((b3 * decode ) | b1) = b1 & rng ((b3 * decode ) | b1) c= b2 & (b3 * decode ) | b1 in Funcs b1,b2 & dom (b3 * decode ) = omega & rng (b3 * decode ) c= b2 )
Lemma16:
for b1 being non empty set
for b2 being Function of VAR ,b1
for b3 being Element of VAR holds
( decode . (x". b3) = b3 & (decode " ) . b3 = x". b3 & (b2 * decode ) . (x". b3) = b2 . b3 )
Lemma17:
for b1 being set
for b2 being finite Subset of VAR holds
( b1 in code b2 iff ex b3 being Element of VAR st
( b3 in b2 & b1 = x". b3 ) )
Lemma18:
for b1 being Element of VAR holds code {b1} = {(x". b1)}
Lemma19:
for b1, b2 being Element of VAR holds code {b1,b2} = {(x". b1),(x". b2)}
Lemma20:
for b1 being finite Subset of VAR holds b1, code b1 are_equipotent
Lemma21:
for b1, b2 being finite Subset of VAR holds
( code (b1 \/ b2) = (code b1) \/ (code b2) & code (b1 \ b2) = (code b1) \ (code b2) )
by RELAT_1:153, Lemma4, FUNCT_1:123;
Lemma22:
for b1 being non empty set
for b2 being Function of VAR ,b1
for b3 being Element of VAR
for b4 being ZF-formula st b3 in Free b4 holds
((b2 * decode ) | (code (Free b4))) . (x". b3) = b2 . b3
Lemma23:
for b1 being non empty set
for b2 being ZF-formula
for b3, b4 being Function of VAR ,b1 st (b3 * decode ) | (code (Free b2)) = (b4 * decode ) | (code (Free b2)) & b3 in St b2,b1 holds
b4 in St b2,b1
Lemma24:
for b1 being set
for b2 being finite Subset of omega
for b3 being non empty set st b1 in Funcs b2,b3 holds
ex b4 being Function of VAR ,b3 st b1 = (b4 * decode ) | b2
theorem Th1: :: ZF_FUND1:1
theorem Th2: :: ZF_FUND1:2
theorem Th3: :: ZF_FUND1:3
theorem Th4: :: ZF_FUND1:4
theorem Th5: :: ZF_FUND1:5
theorem Th6: :: ZF_FUND1:6
theorem Th7: :: ZF_FUND1:7
theorem Th8: :: ZF_FUND1:8
theorem Th9: :: ZF_FUND1:9
theorem Th10: :: ZF_FUND1:10
Lemma35:
for b1 being Universe
for b2 being Subclass of b1
for b3 being Element of omega st b2 is closed_wrt_A1-A7 holds
b3 in b2
Lemma36:
for b1 being Universe
for b2 being Subclass of b1 st b2 is closed_wrt_A1-A7 holds
( 0-element_of b1 in b2 & 1-element_of b1 in b2 )
theorem Th11: :: ZF_FUND1:11
theorem Th12: :: ZF_FUND1:12
theorem Th13: :: ZF_FUND1:13
theorem Th14: :: ZF_FUND1:14
theorem Th15: :: ZF_FUND1:15
theorem Th16: :: ZF_FUND1:16
Lemma42:
for b1, b2, b3 being set holds {[b1,b2],[b2,b2]} (#) {[b2,b3]} = {[b1,b3],[b2,b3]}
theorem Th17: :: ZF_FUND1:17
Lemma44:
for b1, b2, b3, b4, b5, b6 being set st b1 <> b2 holds
{[b3,b1],[b4,b2]} (#) {[b1,b5],[b2,b6]} = {[b3,b5],[b4,b6]}
Lemma45:
for b1, b2 being set
for b3 being Function holds
( dom b3 = {b1,b2} iff b3 = {[b1,(b3 . b1)],[b2,(b3 . b2)]} )
theorem Th18: :: ZF_FUND1:18
theorem Th19: :: ZF_FUND1:19
theorem Th20: :: ZF_FUND1:20
theorem Th21: :: ZF_FUND1:21
theorem Th22: :: ZF_FUND1:22
theorem Th23: :: ZF_FUND1:23
theorem Th24: :: ZF_FUND1:24
theorem Th25: :: ZF_FUND1:25
for
b1,
b2,
b3,
b4,
b5,
b6 being
set st
b1 <> b2 holds
{[b3,b1],[b4,b2]} (#) {[b1,b5],[b2,b6]} = {[b3,b5],[b4,b6]} by Lemma44;
theorem Th26: :: ZF_FUND1:26
canceled;
theorem Th27: :: ZF_FUND1:27
theorem Th28: :: ZF_FUND1:28
theorem Th29: :: ZF_FUND1:29
theorem Th30: :: ZF_FUND1:30
theorem Th31: :: ZF_FUND1:31
theorem Th32: :: ZF_FUND1:32
theorem Th33: :: ZF_FUND1:33
theorem Th34: :: ZF_FUND1:34
theorem Th35: :: ZF_FUND1:35
theorem Th36: :: ZF_FUND1:36
theorem Th37: :: ZF_FUND1:37
theorem Th38: :: ZF_FUND1:38