:: ZF_LANG1 semantic presentation
begin
theorem Th1: :: ZF_LANG1:1
for x, y being Variable holds
( Var1 (x '=' y) = x & Var2 (x '=' y) = y )
proof
let x, y be Variable; ::_thesis: ( Var1 (x '=' y) = x & Var2 (x '=' y) = y )
x '=' y is being_equality by ZF_LANG:5;
then x '=' y = (Var1 (x '=' y)) '=' (Var2 (x '=' y)) by ZF_LANG:36;
hence ( Var1 (x '=' y) = x & Var2 (x '=' y) = y ) by ZF_LANG:1; ::_thesis: verum
end;
theorem Th2: :: ZF_LANG1:2
for x, y being Variable holds
( Var1 (x 'in' y) = x & Var2 (x 'in' y) = y )
proof
let x, y be Variable; ::_thesis: ( Var1 (x 'in' y) = x & Var2 (x 'in' y) = y )
x 'in' y is being_membership by ZF_LANG:5;
then x 'in' y = (Var1 (x 'in' y)) 'in' (Var2 (x 'in' y)) by ZF_LANG:37;
hence ( Var1 (x 'in' y) = x & Var2 (x 'in' y) = y ) by ZF_LANG:2; ::_thesis: verum
end;
theorem Th3: :: ZF_LANG1:3
for p being ZF-formula holds the_argument_of ('not' p) = p
proof
let p be ZF-formula; ::_thesis: the_argument_of ('not' p) = p
'not' p is negative by ZF_LANG:5;
hence the_argument_of ('not' p) = p by ZF_LANG:def_30; ::_thesis: verum
end;
theorem Th4: :: ZF_LANG1:4
for p, q being ZF-formula holds
( the_left_argument_of (p '&' q) = p & the_right_argument_of (p '&' q) = q )
proof
let p, q be ZF-formula; ::_thesis: ( the_left_argument_of (p '&' q) = p & the_right_argument_of (p '&' q) = q )
p '&' q is conjunctive by ZF_LANG:5;
then p '&' q = (the_left_argument_of (p '&' q)) '&' (the_right_argument_of (p '&' q)) by ZF_LANG:40;
hence ( the_left_argument_of (p '&' q) = p & the_right_argument_of (p '&' q) = q ) by ZF_LANG:30; ::_thesis: verum
end;
theorem :: ZF_LANG1:5
for p, q being ZF-formula holds
( the_left_argument_of (p 'or' q) = p & the_right_argument_of (p 'or' q) = q )
proof
let p, q be ZF-formula; ::_thesis: ( the_left_argument_of (p 'or' q) = p & the_right_argument_of (p 'or' q) = q )
p 'or' q is disjunctive by ZF_LANG:6;
then p 'or' q = (the_left_argument_of (p 'or' q)) 'or' (the_right_argument_of (p 'or' q)) by ZF_LANG:41;
hence ( the_left_argument_of (p 'or' q) = p & the_right_argument_of (p 'or' q) = q ) by ZF_LANG:31; ::_thesis: verum
end;
theorem Th6: :: ZF_LANG1:6
for p, q being ZF-formula holds
( the_antecedent_of (p => q) = p & the_consequent_of (p => q) = q )
proof
let p, q be ZF-formula; ::_thesis: ( the_antecedent_of (p => q) = p & the_consequent_of (p => q) = q )
p => q is conditional by ZF_LANG:6;
then p => q = (the_antecedent_of (p => q)) => (the_consequent_of (p => q)) by ZF_LANG:47;
hence ( the_antecedent_of (p => q) = p & the_consequent_of (p => q) = q ) by ZF_LANG:32; ::_thesis: verum
end;
theorem :: ZF_LANG1:7
for p, q being ZF-formula holds
( the_left_side_of (p <=> q) = p & the_right_side_of (p <=> q) = q )
proof
let p, q be ZF-formula; ::_thesis: ( the_left_side_of (p <=> q) = p & the_right_side_of (p <=> q) = q )
p <=> q is biconditional by ZF_LANG:6;
then p <=> q = (the_left_side_of (p <=> q)) <=> (the_right_side_of (p <=> q)) by ZF_LANG:49;
hence ( the_left_side_of (p <=> q) = p & the_right_side_of (p <=> q) = q ) by ZF_LANG:33; ::_thesis: verum
end;
theorem Th8: :: ZF_LANG1:8
for p being ZF-formula
for x being Variable holds
( bound_in (All (x,p)) = x & the_scope_of (All (x,p)) = p )
proof
let p be ZF-formula; ::_thesis: for x being Variable holds
( bound_in (All (x,p)) = x & the_scope_of (All (x,p)) = p )
let x be Variable; ::_thesis: ( bound_in (All (x,p)) = x & the_scope_of (All (x,p)) = p )
All (x,p) is universal by ZF_LANG:5;
then All (x,p) = All ((bound_in (All (x,p))),(the_scope_of (All (x,p)))) by ZF_LANG:44;
hence ( bound_in (All (x,p)) = x & the_scope_of (All (x,p)) = p ) by ZF_LANG:3; ::_thesis: verum
end;
theorem Th9: :: ZF_LANG1:9
for p being ZF-formula
for x being Variable holds
( bound_in (Ex (x,p)) = x & the_scope_of (Ex (x,p)) = p )
proof
let p be ZF-formula; ::_thesis: for x being Variable holds
( bound_in (Ex (x,p)) = x & the_scope_of (Ex (x,p)) = p )
let x be Variable; ::_thesis: ( bound_in (Ex (x,p)) = x & the_scope_of (Ex (x,p)) = p )
Ex (x,p) is existential by ZF_LANG:6;
then Ex (x,p) = Ex ((bound_in (Ex (x,p))),(the_scope_of (Ex (x,p)))) by ZF_LANG:45;
hence ( bound_in (Ex (x,p)) = x & the_scope_of (Ex (x,p)) = p ) by ZF_LANG:34; ::_thesis: verum
end;
theorem :: ZF_LANG1:10
for p, q being ZF-formula holds p 'or' q = ('not' p) => q ;
theorem :: ZF_LANG1:11
for p being ZF-formula
for x, y being Variable holds
( All (x,y,p) is universal & bound_in (All (x,y,p)) = x & the_scope_of (All (x,y,p)) = All (y,p) ) by Th8, ZF_LANG:5;
theorem :: ZF_LANG1:12
for p being ZF-formula
for x, y being Variable holds
( Ex (x,y,p) is existential & bound_in (Ex (x,y,p)) = x & the_scope_of (Ex (x,y,p)) = Ex (y,p) ) by Th9, ZF_LANG:6;
theorem :: ZF_LANG1:13
for p being ZF-formula
for x, y, z being Variable holds
( All (x,y,z,p) = All (x,(All (y,(All (z,p))))) & All (x,y,z,p) = All (x,y,(All (z,p))) ) ;
theorem Th14: :: ZF_LANG1:14
for p1, p2 being ZF-formula
for x1, y1, x2, y2 being Variable st All (x1,y1,p1) = All (x2,y2,p2) holds
( x1 = x2 & y1 = y2 & p1 = p2 )
proof
let p1, p2 be ZF-formula; ::_thesis: for x1, y1, x2, y2 being Variable st All (x1,y1,p1) = All (x2,y2,p2) holds
( x1 = x2 & y1 = y2 & p1 = p2 )
let x1, y1, x2, y2 be Variable; ::_thesis: ( All (x1,y1,p1) = All (x2,y2,p2) implies ( x1 = x2 & y1 = y2 & p1 = p2 ) )
assume A1: All (x1,y1,p1) = All (x2,y2,p2) ; ::_thesis: ( x1 = x2 & y1 = y2 & p1 = p2 )
then All (y1,p1) = All (y2,p2) by ZF_LANG:3;
hence ( x1 = x2 & y1 = y2 & p1 = p2 ) by A1, ZF_LANG:3; ::_thesis: verum
end;
theorem :: ZF_LANG1:15
for p1, p2 being ZF-formula
for x1, y1, z1, x2, y2, z2 being Variable st All (x1,y1,z1,p1) = All (x2,y2,z2,p2) holds
( x1 = x2 & y1 = y2 & z1 = z2 & p1 = p2 )
proof
let p1, p2 be ZF-formula; ::_thesis: for x1, y1, z1, x2, y2, z2 being Variable st All (x1,y1,z1,p1) = All (x2,y2,z2,p2) holds
( x1 = x2 & y1 = y2 & z1 = z2 & p1 = p2 )
let x1, y1, z1, x2, y2, z2 be Variable; ::_thesis: ( All (x1,y1,z1,p1) = All (x2,y2,z2,p2) implies ( x1 = x2 & y1 = y2 & z1 = z2 & p1 = p2 ) )
assume A1: All (x1,y1,z1,p1) = All (x2,y2,z2,p2) ; ::_thesis: ( x1 = x2 & y1 = y2 & z1 = z2 & p1 = p2 )
then All (y1,z1,p1) = All (y2,z2,p2) by ZF_LANG:3;
hence ( x1 = x2 & y1 = y2 & z1 = z2 & p1 = p2 ) by A1, Th14, ZF_LANG:3; ::_thesis: verum
end;
theorem :: ZF_LANG1:16
for p, q being ZF-formula
for x, y, z, t, s being Variable st All (x,y,z,p) = All (t,s,q) holds
( x = t & y = s & All (z,p) = q )
proof
let p, q be ZF-formula; ::_thesis: for x, y, z, t, s being Variable st All (x,y,z,p) = All (t,s,q) holds
( x = t & y = s & All (z,p) = q )
let x, y, z, t, s be Variable; ::_thesis: ( All (x,y,z,p) = All (t,s,q) implies ( x = t & y = s & All (z,p) = q ) )
All (x,y,z,p) = All (x,y,(All (z,p))) ;
hence ( All (x,y,z,p) = All (t,s,q) implies ( x = t & y = s & All (z,p) = q ) ) by Th14; ::_thesis: verum
end;
theorem Th17: :: ZF_LANG1:17
for p1, p2 being ZF-formula
for x1, y1, x2, y2 being Variable st Ex (x1,y1,p1) = Ex (x2,y2,p2) holds
( x1 = x2 & y1 = y2 & p1 = p2 )
proof
let p1, p2 be ZF-formula; ::_thesis: for x1, y1, x2, y2 being Variable st Ex (x1,y1,p1) = Ex (x2,y2,p2) holds
( x1 = x2 & y1 = y2 & p1 = p2 )
let x1, y1, x2, y2 be Variable; ::_thesis: ( Ex (x1,y1,p1) = Ex (x2,y2,p2) implies ( x1 = x2 & y1 = y2 & p1 = p2 ) )
assume A1: Ex (x1,y1,p1) = Ex (x2,y2,p2) ; ::_thesis: ( x1 = x2 & y1 = y2 & p1 = p2 )
then Ex (y1,p1) = Ex (y2,p2) by ZF_LANG:34;
hence ( x1 = x2 & y1 = y2 & p1 = p2 ) by A1, ZF_LANG:34; ::_thesis: verum
end;
theorem :: ZF_LANG1:18
for p being ZF-formula
for x, y, z being Variable holds
( Ex (x,y,z,p) = Ex (x,(Ex (y,(Ex (z,p))))) & Ex (x,y,z,p) = Ex (x,y,(Ex (z,p))) ) ;
theorem :: ZF_LANG1:19
for p1, p2 being ZF-formula
for x1, y1, z1, x2, y2, z2 being Variable st Ex (x1,y1,z1,p1) = Ex (x2,y2,z2,p2) holds
( x1 = x2 & y1 = y2 & z1 = z2 & p1 = p2 )
proof
let p1, p2 be ZF-formula; ::_thesis: for x1, y1, z1, x2, y2, z2 being Variable st Ex (x1,y1,z1,p1) = Ex (x2,y2,z2,p2) holds
( x1 = x2 & y1 = y2 & z1 = z2 & p1 = p2 )
let x1, y1, z1, x2, y2, z2 be Variable; ::_thesis: ( Ex (x1,y1,z1,p1) = Ex (x2,y2,z2,p2) implies ( x1 = x2 & y1 = y2 & z1 = z2 & p1 = p2 ) )
assume A1: Ex (x1,y1,z1,p1) = Ex (x2,y2,z2,p2) ; ::_thesis: ( x1 = x2 & y1 = y2 & z1 = z2 & p1 = p2 )
then Ex (y1,z1,p1) = Ex (y2,z2,p2) by ZF_LANG:34;
hence ( x1 = x2 & y1 = y2 & z1 = z2 & p1 = p2 ) by A1, Th17, ZF_LANG:34; ::_thesis: verum
end;
theorem :: ZF_LANG1:20
for p, q being ZF-formula
for x, y, z, t, s being Variable st Ex (x,y,z,p) = Ex (t,s,q) holds
( x = t & y = s & Ex (z,p) = q )
proof
let p, q be ZF-formula; ::_thesis: for x, y, z, t, s being Variable st Ex (x,y,z,p) = Ex (t,s,q) holds
( x = t & y = s & Ex (z,p) = q )
let x, y, z, t, s be Variable; ::_thesis: ( Ex (x,y,z,p) = Ex (t,s,q) implies ( x = t & y = s & Ex (z,p) = q ) )
Ex (x,y,z,p) = Ex (x,y,(Ex (z,p))) ;
hence ( Ex (x,y,z,p) = Ex (t,s,q) implies ( x = t & y = s & Ex (z,p) = q ) ) by Th17; ::_thesis: verum
end;
theorem :: ZF_LANG1:21
for p being ZF-formula
for x, y, z being Variable holds
( All (x,y,z,p) is universal & bound_in (All (x,y,z,p)) = x & the_scope_of (All (x,y,z,p)) = All (y,z,p) ) by Th8, ZF_LANG:5;
theorem :: ZF_LANG1:22
for p being ZF-formula
for x, y, z being Variable holds
( Ex (x,y,z,p) is existential & bound_in (Ex (x,y,z,p)) = x & the_scope_of (Ex (x,y,z,p)) = Ex (y,z,p) ) by Th9, ZF_LANG:6;
theorem :: ZF_LANG1:23
for H being ZF-formula st H is disjunctive holds
the_left_argument_of H = the_argument_of (the_left_argument_of (the_argument_of H))
proof
let H be ZF-formula; ::_thesis: ( H is disjunctive implies the_left_argument_of H = the_argument_of (the_left_argument_of (the_argument_of H)) )
assume H is disjunctive ; ::_thesis: the_left_argument_of H = the_argument_of (the_left_argument_of (the_argument_of H))
then H = (the_left_argument_of H) 'or' (the_right_argument_of H) by ZF_LANG:41;
then the_argument_of H = ('not' (the_left_argument_of H)) '&' ('not' (the_right_argument_of H)) by Th3;
then the_left_argument_of (the_argument_of H) = 'not' (the_left_argument_of H) by Th4;
hence the_left_argument_of H = the_argument_of (the_left_argument_of (the_argument_of H)) by Th3; ::_thesis: verum
end;
theorem :: ZF_LANG1:24
for H being ZF-formula st H is disjunctive holds
the_right_argument_of H = the_argument_of (the_right_argument_of (the_argument_of H))
proof
let H be ZF-formula; ::_thesis: ( H is disjunctive implies the_right_argument_of H = the_argument_of (the_right_argument_of (the_argument_of H)) )
assume H is disjunctive ; ::_thesis: the_right_argument_of H = the_argument_of (the_right_argument_of (the_argument_of H))
then H = (the_left_argument_of H) 'or' (the_right_argument_of H) by ZF_LANG:41;
then the_argument_of H = ('not' (the_left_argument_of H)) '&' ('not' (the_right_argument_of H)) by Th3;
then the_right_argument_of (the_argument_of H) = 'not' (the_right_argument_of H) by Th4;
hence the_right_argument_of H = the_argument_of (the_right_argument_of (the_argument_of H)) by Th3; ::_thesis: verum
end;
theorem :: ZF_LANG1:25
for H being ZF-formula st H is conditional holds
the_antecedent_of H = the_left_argument_of (the_argument_of H)
proof
let H be ZF-formula; ::_thesis: ( H is conditional implies the_antecedent_of H = the_left_argument_of (the_argument_of H) )
assume H is conditional ; ::_thesis: the_antecedent_of H = the_left_argument_of (the_argument_of H)
then H = (the_antecedent_of H) => (the_consequent_of H) by ZF_LANG:47;
then the_argument_of H = (the_antecedent_of H) '&' ('not' (the_consequent_of H)) by Th3;
hence the_antecedent_of H = the_left_argument_of (the_argument_of H) by Th4; ::_thesis: verum
end;
theorem :: ZF_LANG1:26
for H being ZF-formula st H is conditional holds
the_consequent_of H = the_argument_of (the_right_argument_of (the_argument_of H))
proof
let H be ZF-formula; ::_thesis: ( H is conditional implies the_consequent_of H = the_argument_of (the_right_argument_of (the_argument_of H)) )
assume H is conditional ; ::_thesis: the_consequent_of H = the_argument_of (the_right_argument_of (the_argument_of H))
then H = (the_antecedent_of H) => (the_consequent_of H) by ZF_LANG:47;
then the_argument_of H = (the_antecedent_of H) '&' ('not' (the_consequent_of H)) by Th3;
then the_right_argument_of (the_argument_of H) = 'not' (the_consequent_of H) by Th4;
hence the_consequent_of H = the_argument_of (the_right_argument_of (the_argument_of H)) by Th3; ::_thesis: verum
end;
theorem :: ZF_LANG1:27
for H being ZF-formula st H is biconditional holds
( the_left_side_of H = the_antecedent_of (the_left_argument_of H) & the_left_side_of H = the_consequent_of (the_right_argument_of H) )
proof
let H be ZF-formula; ::_thesis: ( H is biconditional implies ( the_left_side_of H = the_antecedent_of (the_left_argument_of H) & the_left_side_of H = the_consequent_of (the_right_argument_of H) ) )
assume H is biconditional ; ::_thesis: ( the_left_side_of H = the_antecedent_of (the_left_argument_of H) & the_left_side_of H = the_consequent_of (the_right_argument_of H) )
then H = (the_left_side_of H) <=> (the_right_side_of H) by ZF_LANG:49;
then ( the_left_argument_of H = (the_left_side_of H) => (the_right_side_of H) & the_right_argument_of H = (the_right_side_of H) => (the_left_side_of H) ) by Th4;
hence ( the_left_side_of H = the_antecedent_of (the_left_argument_of H) & the_left_side_of H = the_consequent_of (the_right_argument_of H) ) by Th6; ::_thesis: verum
end;
theorem :: ZF_LANG1:28
for H being ZF-formula st H is biconditional holds
( the_right_side_of H = the_consequent_of (the_left_argument_of H) & the_right_side_of H = the_antecedent_of (the_right_argument_of H) )
proof
let H be ZF-formula; ::_thesis: ( H is biconditional implies ( the_right_side_of H = the_consequent_of (the_left_argument_of H) & the_right_side_of H = the_antecedent_of (the_right_argument_of H) ) )
assume H is biconditional ; ::_thesis: ( the_right_side_of H = the_consequent_of (the_left_argument_of H) & the_right_side_of H = the_antecedent_of (the_right_argument_of H) )
then H = (the_left_side_of H) <=> (the_right_side_of H) by ZF_LANG:49;
then ( the_left_argument_of H = (the_left_side_of H) => (the_right_side_of H) & the_right_argument_of H = (the_right_side_of H) => (the_left_side_of H) ) by Th4;
hence ( the_right_side_of H = the_consequent_of (the_left_argument_of H) & the_right_side_of H = the_antecedent_of (the_right_argument_of H) ) by Th6; ::_thesis: verum
end;
theorem :: ZF_LANG1:29
for H being ZF-formula st H is existential holds
( bound_in H = bound_in (the_argument_of H) & the_scope_of H = the_argument_of (the_scope_of (the_argument_of H)) )
proof
let H be ZF-formula; ::_thesis: ( H is existential implies ( bound_in H = bound_in (the_argument_of H) & the_scope_of H = the_argument_of (the_scope_of (the_argument_of H)) ) )
assume H is existential ; ::_thesis: ( bound_in H = bound_in (the_argument_of H) & the_scope_of H = the_argument_of (the_scope_of (the_argument_of H)) )
then H = Ex ((bound_in H),(the_scope_of H)) by ZF_LANG:45;
then A1: the_argument_of H = All ((bound_in H),('not' (the_scope_of H))) by Th3;
hence bound_in H = bound_in (the_argument_of H) by Th8; ::_thesis: the_scope_of H = the_argument_of (the_scope_of (the_argument_of H))
'not' (the_scope_of H) = the_scope_of (the_argument_of H) by A1, Th8;
hence the_scope_of H = the_argument_of (the_scope_of (the_argument_of H)) by Th3; ::_thesis: verum
end;
theorem :: ZF_LANG1:30
for F, G being ZF-formula holds
( the_argument_of (F 'or' G) = ('not' F) '&' ('not' G) & the_antecedent_of (F 'or' G) = 'not' F & the_consequent_of (F 'or' G) = G )
proof
let F, G be ZF-formula; ::_thesis: ( the_argument_of (F 'or' G) = ('not' F) '&' ('not' G) & the_antecedent_of (F 'or' G) = 'not' F & the_consequent_of (F 'or' G) = G )
thus the_argument_of (F 'or' G) = ('not' F) '&' ('not' G) by Th3; ::_thesis: ( the_antecedent_of (F 'or' G) = 'not' F & the_consequent_of (F 'or' G) = G )
F 'or' G = ('not' F) => G ;
hence ( the_antecedent_of (F 'or' G) = 'not' F & the_consequent_of (F 'or' G) = G ) by Th6; ::_thesis: verum
end;
theorem :: ZF_LANG1:31
for F, G being ZF-formula holds the_argument_of (F => G) = F '&' ('not' G) by Th3;
theorem :: ZF_LANG1:32
for F, G being ZF-formula holds
( the_left_argument_of (F <=> G) = F => G & the_right_argument_of (F <=> G) = G => F ) by Th4;
theorem :: ZF_LANG1:33
for H being ZF-formula
for x being Variable holds the_argument_of (Ex (x,H)) = All (x,('not' H)) by Th3;
theorem :: ZF_LANG1:34
for H being ZF-formula st H is disjunctive holds
( H is conditional & H is negative & the_argument_of H is conjunctive & the_left_argument_of (the_argument_of H) is negative & the_right_argument_of (the_argument_of H) is negative )
proof
let H be ZF-formula; ::_thesis: ( H is disjunctive implies ( H is conditional & H is negative & the_argument_of H is conjunctive & the_left_argument_of (the_argument_of H) is negative & the_right_argument_of (the_argument_of H) is negative ) )
assume H is disjunctive ; ::_thesis: ( H is conditional & H is negative & the_argument_of H is conjunctive & the_left_argument_of (the_argument_of H) is negative & the_right_argument_of (the_argument_of H) is negative )
then A1: H = (the_left_argument_of H) 'or' (the_right_argument_of H) by ZF_LANG:41;
then H = ('not' (the_left_argument_of H)) => (the_right_argument_of H) ;
hence ( H is conditional & H is negative ) by ZF_LANG:5, ZF_LANG:6; ::_thesis: ( the_argument_of H is conjunctive & the_left_argument_of (the_argument_of H) is negative & the_right_argument_of (the_argument_of H) is negative )
A2: the_argument_of H = ('not' (the_left_argument_of H)) '&' ('not' (the_right_argument_of H)) by A1, Th3;
hence the_argument_of H is conjunctive by ZF_LANG:5; ::_thesis: ( the_left_argument_of (the_argument_of H) is negative & the_right_argument_of (the_argument_of H) is negative )
( the_left_argument_of (the_argument_of H) = 'not' (the_left_argument_of H) & the_right_argument_of (the_argument_of H) = 'not' (the_right_argument_of H) ) by A2, Th4;
hence ( the_left_argument_of (the_argument_of H) is negative & the_right_argument_of (the_argument_of H) is negative ) by ZF_LANG:5; ::_thesis: verum
end;
theorem :: ZF_LANG1:35
for H being ZF-formula st H is conditional holds
( H is negative & the_argument_of H is conjunctive & the_right_argument_of (the_argument_of H) is negative )
proof
let H be ZF-formula; ::_thesis: ( H is conditional implies ( H is negative & the_argument_of H is conjunctive & the_right_argument_of (the_argument_of H) is negative ) )
assume H is conditional ; ::_thesis: ( H is negative & the_argument_of H is conjunctive & the_right_argument_of (the_argument_of H) is negative )
then A1: H = (the_antecedent_of H) => (the_consequent_of H) by ZF_LANG:47;
hence H is negative by ZF_LANG:5; ::_thesis: ( the_argument_of H is conjunctive & the_right_argument_of (the_argument_of H) is negative )
A2: the_argument_of H = (the_antecedent_of H) '&' ('not' (the_consequent_of H)) by A1, Th3;
hence the_argument_of H is conjunctive by ZF_LANG:5; ::_thesis: the_right_argument_of (the_argument_of H) is negative
the_right_argument_of (the_argument_of H) = 'not' (the_consequent_of H) by A2, Th4;
hence the_right_argument_of (the_argument_of H) is negative by ZF_LANG:5; ::_thesis: verum
end;
theorem :: ZF_LANG1:36
for H being ZF-formula st H is biconditional holds
( H is conjunctive & the_left_argument_of H is conditional & the_right_argument_of H is conditional )
proof
let H be ZF-formula; ::_thesis: ( H is biconditional implies ( H is conjunctive & the_left_argument_of H is conditional & the_right_argument_of H is conditional ) )
assume H is biconditional ; ::_thesis: ( H is conjunctive & the_left_argument_of H is conditional & the_right_argument_of H is conditional )
then A1: H = (the_left_side_of H) <=> (the_right_side_of H) by ZF_LANG:49;
hence H is conjunctive by ZF_LANG:5; ::_thesis: ( the_left_argument_of H is conditional & the_right_argument_of H is conditional )
( the_left_argument_of H = (the_left_side_of H) => (the_right_side_of H) & the_right_argument_of H = (the_right_side_of H) => (the_left_side_of H) ) by A1, Th4;
hence ( the_left_argument_of H is conditional & the_right_argument_of H is conditional ) by ZF_LANG:6; ::_thesis: verum
end;
theorem :: ZF_LANG1:37
for H being ZF-formula st H is existential holds
( H is negative & the_argument_of H is universal & the_scope_of (the_argument_of H) is negative )
proof
let H be ZF-formula; ::_thesis: ( H is existential implies ( H is negative & the_argument_of H is universal & the_scope_of (the_argument_of H) is negative ) )
assume H is existential ; ::_thesis: ( H is negative & the_argument_of H is universal & the_scope_of (the_argument_of H) is negative )
then A1: H = Ex ((bound_in H),(the_scope_of H)) by ZF_LANG:45;
hence H is negative by ZF_LANG:5; ::_thesis: ( the_argument_of H is universal & the_scope_of (the_argument_of H) is negative )
A2: the_argument_of H = All ((bound_in H),('not' (the_scope_of H))) by A1, Th3;
hence the_argument_of H is universal by ZF_LANG:5; ::_thesis: the_scope_of (the_argument_of H) is negative
'not' (the_scope_of H) = the_scope_of (the_argument_of H) by A2, Th8;
hence the_scope_of (the_argument_of H) is negative by ZF_LANG:5; ::_thesis: verum
end;
theorem :: ZF_LANG1:38
for H being ZF-formula holds
( ( not H is being_equality or ( not H is being_membership & not H is negative & not H is conjunctive & not H is universal ) ) & ( not H is being_membership or ( not H is negative & not H is conjunctive & not H is universal ) ) & ( not H is negative or ( not H is conjunctive & not H is universal ) ) & ( not H is conjunctive or not H is universal ) )
proof
let H be ZF-formula; ::_thesis: ( ( not H is being_equality or ( not H is being_membership & not H is negative & not H is conjunctive & not H is universal ) ) & ( not H is being_membership or ( not H is negative & not H is conjunctive & not H is universal ) ) & ( not H is negative or ( not H is conjunctive & not H is universal ) ) & ( not H is conjunctive or not H is universal ) )
( H . 1 = 0 or H . 1 = 1 or H . 1 = 2 or H . 1 = 3 or H . 1 = 4 ) by ZF_LANG:23;
hence ( ( not H is being_equality or ( not H is being_membership & not H is negative & not H is conjunctive & not H is universal ) ) & ( not H is being_membership or ( not H is negative & not H is conjunctive & not H is universal ) ) & ( not H is negative or ( not H is conjunctive & not H is universal ) ) & ( not H is conjunctive or not H is universal ) ) by ZF_LANG:18, ZF_LANG:19, ZF_LANG:20, ZF_LANG:21, ZF_LANG:22; ::_thesis: verum
end;
theorem Th39: :: ZF_LANG1:39
for F, G being ZF-formula st F is_subformula_of G holds
len F <= len G
proof
let F, G be ZF-formula; ::_thesis: ( F is_subformula_of G implies len F <= len G )
assume F is_subformula_of G ; ::_thesis: len F <= len G
then ( F is_proper_subformula_of G or F = G ) by ZF_LANG:def_41;
hence len F <= len G by ZF_LANG:62; ::_thesis: verum
end;
theorem Th40: :: ZF_LANG1:40
for F, G, H being ZF-formula st ( ( F is_proper_subformula_of G & G is_subformula_of H ) or ( F is_subformula_of G & G is_proper_subformula_of H ) or ( F is_subformula_of G & G is_immediate_constituent_of H ) or ( F is_immediate_constituent_of G & G is_subformula_of H ) or ( F is_proper_subformula_of G & G is_immediate_constituent_of H ) or ( F is_immediate_constituent_of G & G is_proper_subformula_of H ) ) holds
F is_proper_subformula_of H
proof
let F, G, H be ZF-formula; ::_thesis: ( ( ( F is_proper_subformula_of G & G is_subformula_of H ) or ( F is_subformula_of G & G is_proper_subformula_of H ) or ( F is_subformula_of G & G is_immediate_constituent_of H ) or ( F is_immediate_constituent_of G & G is_subformula_of H ) or ( F is_proper_subformula_of G & G is_immediate_constituent_of H ) or ( F is_immediate_constituent_of G & G is_proper_subformula_of H ) ) implies F is_proper_subformula_of H )
A1: ( F is_immediate_constituent_of G implies F is_proper_subformula_of G ) by ZF_LANG:61;
A2: now__::_thesis:_(_F_is_proper_subformula_of_G_&_G_is_subformula_of_H_implies_F_is_proper_subformula_of_H_)
assume A3: F is_proper_subformula_of G ; ::_thesis: ( G is_subformula_of H implies F is_proper_subformula_of H )
then A4: len F < len G by ZF_LANG:62;
assume A5: G is_subformula_of H ; ::_thesis: F is_proper_subformula_of H
F is_subformula_of G by A3, ZF_LANG:def_41;
then A6: F is_subformula_of H by A5, ZF_LANG:65;
len G <= len H by A5, Th39;
hence F is_proper_subformula_of H by A4, A6, ZF_LANG:def_41; ::_thesis: verum
end;
A7: now__::_thesis:_(_F_is_subformula_of_G_&_G_is_proper_subformula_of_H_&_(_(_F_is_proper_subformula_of_G_&_G_is_subformula_of_H_)_or_(_F_is_subformula_of_G_&_G_is_proper_subformula_of_H_)_or_(_F_is_subformula_of_G_&_G_is_immediate_constituent_of_H_)_or_(_F_is_immediate_constituent_of_G_&_G_is_subformula_of_H_)_or_(_F_is_proper_subformula_of_G_&_G_is_immediate_constituent_of_H_)_or_(_F_is_immediate_constituent_of_G_&_G_is_proper_subformula_of_H_)_)_implies_F_is_proper_subformula_of_H_)
assume that
A8: F is_subformula_of G and
A9: G is_proper_subformula_of H ; ::_thesis: ( ( ( F is_proper_subformula_of G & G is_subformula_of H ) or ( F is_subformula_of G & G is_proper_subformula_of H ) or ( F is_subformula_of G & G is_immediate_constituent_of H ) or ( F is_immediate_constituent_of G & G is_subformula_of H ) or ( F is_proper_subformula_of G & G is_immediate_constituent_of H ) or ( F is_immediate_constituent_of G & G is_proper_subformula_of H ) ) implies F is_proper_subformula_of H )
G is_subformula_of H by A9, ZF_LANG:def_41;
then A10: F is_subformula_of H by A8, ZF_LANG:65;
len F <= len G by A8, Th39;
then len F < len H by A9, XXREAL_0:2, ZF_LANG:62;
hence ( ( ( F is_proper_subformula_of G & G is_subformula_of H ) or ( F is_subformula_of G & G is_proper_subformula_of H ) or ( F is_subformula_of G & G is_immediate_constituent_of H ) or ( F is_immediate_constituent_of G & G is_subformula_of H ) or ( F is_proper_subformula_of G & G is_immediate_constituent_of H ) or ( F is_immediate_constituent_of G & G is_proper_subformula_of H ) ) implies F is_proper_subformula_of H ) by A10, ZF_LANG:def_41; ::_thesis: verum
end;
( G is_immediate_constituent_of H implies G is_proper_subformula_of H ) by ZF_LANG:61;
hence ( ( ( F is_proper_subformula_of G & G is_subformula_of H ) or ( F is_subformula_of G & G is_proper_subformula_of H ) or ( F is_subformula_of G & G is_immediate_constituent_of H ) or ( F is_immediate_constituent_of G & G is_subformula_of H ) or ( F is_proper_subformula_of G & G is_immediate_constituent_of H ) or ( F is_immediate_constituent_of G & G is_proper_subformula_of H ) ) implies F is_proper_subformula_of H ) by A2, A7, A1, ZF_LANG:64; ::_thesis: verum
end;
theorem :: ZF_LANG1:41
for H being ZF-formula holds not H is_immediate_constituent_of H
proof
let H be ZF-formula; ::_thesis: not H is_immediate_constituent_of H
assume H is_immediate_constituent_of H ; ::_thesis: contradiction
then H is_proper_subformula_of H by ZF_LANG:61;
hence contradiction by ZF_LANG:def_41; ::_thesis: verum
end;
theorem :: ZF_LANG1:42
for G, H being ZF-formula holds
( not G is_proper_subformula_of H or not H is_subformula_of G )
proof
let G, H be ZF-formula; ::_thesis: ( not G is_proper_subformula_of H or not H is_subformula_of G )
assume ( G is_proper_subformula_of H & H is_subformula_of G ) ; ::_thesis: contradiction
then G is_proper_subformula_of G by Th40;
hence contradiction by ZF_LANG:def_41; ::_thesis: verum
end;
theorem :: ZF_LANG1:43
for G, H being ZF-formula holds
( not G is_proper_subformula_of H or not H is_proper_subformula_of G )
proof
let G, H be ZF-formula; ::_thesis: ( not G is_proper_subformula_of H or not H is_proper_subformula_of G )
assume ( G is_proper_subformula_of H & H is_proper_subformula_of G ) ; ::_thesis: contradiction
then G is_proper_subformula_of G by ZF_LANG:64;
hence contradiction by ZF_LANG:def_41; ::_thesis: verum
end;
theorem :: ZF_LANG1:44
for G, H being ZF-formula holds
( not G is_subformula_of H or not H is_immediate_constituent_of G )
proof
let G, H be ZF-formula; ::_thesis: ( not G is_subformula_of H or not H is_immediate_constituent_of G )
assume ( G is_subformula_of H & H is_immediate_constituent_of G ) ; ::_thesis: contradiction
then G is_proper_subformula_of G by Th40;
hence contradiction by ZF_LANG:def_41; ::_thesis: verum
end;
theorem :: ZF_LANG1:45
for G, H being ZF-formula holds
( not G is_proper_subformula_of H or not H is_immediate_constituent_of G )
proof
let G, H be ZF-formula; ::_thesis: ( not G is_proper_subformula_of H or not H is_immediate_constituent_of G )
assume ( G is_proper_subformula_of H & H is_immediate_constituent_of G ) ; ::_thesis: contradiction
then G is_proper_subformula_of G by Th40;
hence contradiction by ZF_LANG:def_41; ::_thesis: verum
end;
theorem :: ZF_LANG1:46
for F, H being ZF-formula st 'not' F is_subformula_of H holds
F is_proper_subformula_of H
proof
let F, H be ZF-formula; ::_thesis: ( 'not' F is_subformula_of H implies F is_proper_subformula_of H )
F is_immediate_constituent_of 'not' F by ZF_LANG:def_39;
hence ( 'not' F is_subformula_of H implies F is_proper_subformula_of H ) by Th40; ::_thesis: verum
end;
theorem :: ZF_LANG1:47
for F, G, H being ZF-formula st F '&' G is_subformula_of H holds
( F is_proper_subformula_of H & G is_proper_subformula_of H )
proof
let F, G, H be ZF-formula; ::_thesis: ( F '&' G is_subformula_of H implies ( F is_proper_subformula_of H & G is_proper_subformula_of H ) )
( F is_immediate_constituent_of F '&' G & G is_immediate_constituent_of F '&' G ) by ZF_LANG:def_39;
hence ( F '&' G is_subformula_of H implies ( F is_proper_subformula_of H & G is_proper_subformula_of H ) ) by Th40; ::_thesis: verum
end;
theorem :: ZF_LANG1:48
for H, F being ZF-formula
for x being Variable st All (x,H) is_subformula_of F holds
H is_proper_subformula_of F
proof
let H, F be ZF-formula; ::_thesis: for x being Variable st All (x,H) is_subformula_of F holds
H is_proper_subformula_of F
let x be Variable; ::_thesis: ( All (x,H) is_subformula_of F implies H is_proper_subformula_of F )
H is_immediate_constituent_of All (x,H) by ZF_LANG:def_39;
hence ( All (x,H) is_subformula_of F implies H is_proper_subformula_of F ) by Th40; ::_thesis: verum
end;
theorem :: ZF_LANG1:49
for F, G being ZF-formula holds
( F '&' ('not' G) is_proper_subformula_of F => G & F is_proper_subformula_of F => G & 'not' G is_proper_subformula_of F => G & G is_proper_subformula_of F => G )
proof
let F, G be ZF-formula; ::_thesis: ( F '&' ('not' G) is_proper_subformula_of F => G & F is_proper_subformula_of F => G & 'not' G is_proper_subformula_of F => G & G is_proper_subformula_of F => G )
F '&' ('not' G) is_immediate_constituent_of F => G by ZF_LANG:def_39;
hence A1: F '&' ('not' G) is_proper_subformula_of F => G by ZF_LANG:61; ::_thesis: ( F is_proper_subformula_of F => G & 'not' G is_proper_subformula_of F => G & G is_proper_subformula_of F => G )
( F is_immediate_constituent_of F '&' ('not' G) & 'not' G is_immediate_constituent_of F '&' ('not' G) ) by ZF_LANG:def_39;
hence A2: ( F is_proper_subformula_of F => G & 'not' G is_proper_subformula_of F => G ) by A1, Th40; ::_thesis: G is_proper_subformula_of F => G
G is_immediate_constituent_of 'not' G by ZF_LANG:def_39;
hence G is_proper_subformula_of F => G by A2, Th40; ::_thesis: verum
end;
theorem :: ZF_LANG1:50
for F, G being ZF-formula holds
( ('not' F) '&' ('not' G) is_proper_subformula_of F 'or' G & 'not' F is_proper_subformula_of F 'or' G & 'not' G is_proper_subformula_of F 'or' G & F is_proper_subformula_of F 'or' G & G is_proper_subformula_of F 'or' G )
proof
let F, G be ZF-formula; ::_thesis: ( ('not' F) '&' ('not' G) is_proper_subformula_of F 'or' G & 'not' F is_proper_subformula_of F 'or' G & 'not' G is_proper_subformula_of F 'or' G & F is_proper_subformula_of F 'or' G & G is_proper_subformula_of F 'or' G )
('not' F) '&' ('not' G) is_immediate_constituent_of F 'or' G by ZF_LANG:def_39;
hence A1: ('not' F) '&' ('not' G) is_proper_subformula_of F 'or' G by ZF_LANG:61; ::_thesis: ( 'not' F is_proper_subformula_of F 'or' G & 'not' G is_proper_subformula_of F 'or' G & F is_proper_subformula_of F 'or' G & G is_proper_subformula_of F 'or' G )
( 'not' F is_immediate_constituent_of ('not' F) '&' ('not' G) & 'not' G is_immediate_constituent_of ('not' F) '&' ('not' G) ) by ZF_LANG:def_39;
hence A2: ( 'not' F is_proper_subformula_of F 'or' G & 'not' G is_proper_subformula_of F 'or' G ) by A1, Th40; ::_thesis: ( F is_proper_subformula_of F 'or' G & G is_proper_subformula_of F 'or' G )
( F is_immediate_constituent_of 'not' F & G is_immediate_constituent_of 'not' G ) by ZF_LANG:def_39;
hence ( F is_proper_subformula_of F 'or' G & G is_proper_subformula_of F 'or' G ) by A2, Th40; ::_thesis: verum
end;
theorem :: ZF_LANG1:51
for H being ZF-formula
for x being Variable holds
( All (x,('not' H)) is_proper_subformula_of Ex (x,H) & 'not' H is_proper_subformula_of Ex (x,H) )
proof
let H be ZF-formula; ::_thesis: for x being Variable holds
( All (x,('not' H)) is_proper_subformula_of Ex (x,H) & 'not' H is_proper_subformula_of Ex (x,H) )
let x be Variable; ::_thesis: ( All (x,('not' H)) is_proper_subformula_of Ex (x,H) & 'not' H is_proper_subformula_of Ex (x,H) )
All (x,('not' H)) is_immediate_constituent_of Ex (x,H) by ZF_LANG:def_39;
hence A1: All (x,('not' H)) is_proper_subformula_of Ex (x,H) by ZF_LANG:61; ::_thesis: 'not' H is_proper_subformula_of Ex (x,H)
'not' H is_immediate_constituent_of All (x,('not' H)) by ZF_LANG:def_39;
hence 'not' H is_proper_subformula_of Ex (x,H) by A1, Th40; ::_thesis: verum
end;
theorem :: ZF_LANG1:52
for G, H being ZF-formula holds
( G is_subformula_of H iff G in Subformulae H ) by ZF_LANG:78, ZF_LANG:def_42;
theorem :: ZF_LANG1:53
for G, H being ZF-formula st G in Subformulae H holds
Subformulae G c= Subformulae H by ZF_LANG:78, ZF_LANG:79;
theorem :: ZF_LANG1:54
for H being ZF-formula holds H in Subformulae H
proof
let H be ZF-formula; ::_thesis: H in Subformulae H
H is_subformula_of H by ZF_LANG:59;
hence H in Subformulae H by ZF_LANG:def_42; ::_thesis: verum
end;
theorem Th55: :: ZF_LANG1:55
for F, G being ZF-formula holds Subformulae (F => G) = ((Subformulae F) \/ (Subformulae G)) \/ {('not' G),(F '&' ('not' G)),(F => G)}
proof
let F, G be ZF-formula; ::_thesis: Subformulae (F => G) = ((Subformulae F) \/ (Subformulae G)) \/ {('not' G),(F '&' ('not' G)),(F => G)}
thus Subformulae (F => G) = (Subformulae (F '&' ('not' G))) \/ {(F => G)} by ZF_LANG:82
.= (((Subformulae F) \/ (Subformulae ('not' G))) \/ {(F '&' ('not' G))}) \/ {(F => G)} by ZF_LANG:83
.= (((Subformulae F) \/ ((Subformulae G) \/ {('not' G)})) \/ {(F '&' ('not' G))}) \/ {(F => G)} by ZF_LANG:82
.= ((((Subformulae F) \/ (Subformulae G)) \/ {('not' G)}) \/ {(F '&' ('not' G))}) \/ {(F => G)} by XBOOLE_1:4
.= (((Subformulae F) \/ (Subformulae G)) \/ {('not' G)}) \/ ({(F '&' ('not' G))} \/ {(F => G)}) by XBOOLE_1:4
.= ((Subformulae F) \/ (Subformulae G)) \/ ({('not' G)} \/ ({(F '&' ('not' G))} \/ {(F => G)})) by XBOOLE_1:4
.= ((Subformulae F) \/ (Subformulae G)) \/ ({('not' G)} \/ {(F '&' ('not' G)),(F => G)}) by ENUMSET1:1
.= ((Subformulae F) \/ (Subformulae G)) \/ {('not' G),(F '&' ('not' G)),(F => G)} by ENUMSET1:2 ; ::_thesis: verum
end;
theorem :: ZF_LANG1:56
for F, G being ZF-formula holds Subformulae (F 'or' G) = ((Subformulae F) \/ (Subformulae G)) \/ {('not' G),('not' F),(('not' F) '&' ('not' G)),(F 'or' G)}
proof
let F, G be ZF-formula; ::_thesis: Subformulae (F 'or' G) = ((Subformulae F) \/ (Subformulae G)) \/ {('not' G),('not' F),(('not' F) '&' ('not' G)),(F 'or' G)}
thus Subformulae (F 'or' G) = (Subformulae (('not' F) '&' ('not' G))) \/ {(F 'or' G)} by ZF_LANG:82
.= (((Subformulae ('not' F)) \/ (Subformulae ('not' G))) \/ {(('not' F) '&' ('not' G))}) \/ {(F 'or' G)} by ZF_LANG:83
.= (((Subformulae ('not' F)) \/ ((Subformulae G) \/ {('not' G)})) \/ {(('not' F) '&' ('not' G))}) \/ {(F 'or' G)} by ZF_LANG:82
.= ((((Subformulae F) \/ {('not' F)}) \/ ((Subformulae G) \/ {('not' G)})) \/ {(('not' F) '&' ('not' G))}) \/ {(F 'or' G)} by ZF_LANG:82
.= (((Subformulae F) \/ (((Subformulae G) \/ {('not' G)}) \/ {('not' F)})) \/ {(('not' F) '&' ('not' G))}) \/ {(F 'or' G)} by XBOOLE_1:4
.= (((Subformulae F) \/ ((Subformulae G) \/ ({('not' G)} \/ {('not' F)}))) \/ {(('not' F) '&' ('not' G))}) \/ {(F 'or' G)} by XBOOLE_1:4
.= (((Subformulae F) \/ ((Subformulae G) \/ {('not' G),('not' F)})) \/ {(('not' F) '&' ('not' G))}) \/ {(F 'or' G)} by ENUMSET1:1
.= ((((Subformulae F) \/ (Subformulae G)) \/ {('not' G),('not' F)}) \/ {(('not' F) '&' ('not' G))}) \/ {(F 'or' G)} by XBOOLE_1:4
.= (((Subformulae F) \/ (Subformulae G)) \/ {('not' G),('not' F)}) \/ ({(('not' F) '&' ('not' G))} \/ {(F 'or' G)}) by XBOOLE_1:4
.= (((Subformulae F) \/ (Subformulae G)) \/ {('not' G),('not' F)}) \/ {(('not' F) '&' ('not' G)),(F 'or' G)} by ENUMSET1:1
.= ((Subformulae F) \/ (Subformulae G)) \/ ({('not' G),('not' F)} \/ {(('not' F) '&' ('not' G)),(F 'or' G)}) by XBOOLE_1:4
.= ((Subformulae F) \/ (Subformulae G)) \/ {('not' G),('not' F),(('not' F) '&' ('not' G)),(F 'or' G)} by ENUMSET1:5 ; ::_thesis: verum
end;
theorem :: ZF_LANG1:57
for F, G being ZF-formula holds Subformulae (F <=> G) = ((Subformulae F) \/ (Subformulae G)) \/ {('not' G),(F '&' ('not' G)),(F => G),('not' F),(G '&' ('not' F)),(G => F),(F <=> G)}
proof
let F, G be ZF-formula; ::_thesis: Subformulae (F <=> G) = ((Subformulae F) \/ (Subformulae G)) \/ {('not' G),(F '&' ('not' G)),(F => G),('not' F),(G '&' ('not' F)),(G => F),(F <=> G)}
thus Subformulae (F <=> G) = ((Subformulae (F => G)) \/ (Subformulae (G => F))) \/ {(F <=> G)} by ZF_LANG:83
.= ((((Subformulae F) \/ (Subformulae G)) \/ {('not' G),(F '&' ('not' G)),(F => G)}) \/ (Subformulae (G => F))) \/ {(F <=> G)} by Th55
.= ((((Subformulae F) \/ (Subformulae G)) \/ {('not' G),(F '&' ('not' G)),(F => G)}) \/ (((Subformulae F) \/ (Subformulae G)) \/ {('not' F),(G '&' ('not' F)),(G => F)})) \/ {(F <=> G)} by Th55
.= (((Subformulae F) \/ (Subformulae G)) \/ ((((Subformulae F) \/ (Subformulae G)) \/ {('not' G),(F '&' ('not' G)),(F => G)}) \/ {('not' F),(G '&' ('not' F)),(G => F)})) \/ {(F <=> G)} by XBOOLE_1:4
.= (((Subformulae F) \/ (Subformulae G)) \/ (((Subformulae F) \/ (Subformulae G)) \/ ({('not' G),(F '&' ('not' G)),(F => G)} \/ {('not' F),(G '&' ('not' F)),(G => F)}))) \/ {(F <=> G)} by XBOOLE_1:4
.= ((((Subformulae F) \/ (Subformulae G)) \/ ((Subformulae F) \/ (Subformulae G))) \/ ({('not' G),(F '&' ('not' G)),(F => G)} \/ {('not' F),(G '&' ('not' F)),(G => F)})) \/ {(F <=> G)} by XBOOLE_1:4
.= (((Subformulae F) \/ (Subformulae G)) \/ {('not' G),(F '&' ('not' G)),(F => G),('not' F),(G '&' ('not' F)),(G => F)}) \/ {(F <=> G)} by ENUMSET1:13
.= ((Subformulae F) \/ (Subformulae G)) \/ ({('not' G),(F '&' ('not' G)),(F => G),('not' F),(G '&' ('not' F)),(G => F)} \/ {(F <=> G)}) by XBOOLE_1:4
.= ((Subformulae F) \/ (Subformulae G)) \/ {('not' G),(F '&' ('not' G)),(F => G),('not' F),(G '&' ('not' F)),(G => F),(F <=> G)} by ENUMSET1:21 ; ::_thesis: verum
end;
theorem Th58: :: ZF_LANG1:58
for x, y being Variable holds Free (x '=' y) = {x,y}
proof
let x, y be Variable; ::_thesis: Free (x '=' y) = {x,y}
A1: Var2 (x '=' y) = y by Th1;
( x '=' y is being_equality & Var1 (x '=' y) = x ) by Th1, ZF_LANG:5;
hence Free (x '=' y) = {x,y} by A1, ZF_MODEL:1; ::_thesis: verum
end;
theorem Th59: :: ZF_LANG1:59
for x, y being Variable holds Free (x 'in' y) = {x,y}
proof
let x, y be Variable; ::_thesis: Free (x 'in' y) = {x,y}
A1: Var2 (x 'in' y) = y by Th2;
( x 'in' y is being_membership & Var1 (x 'in' y) = x ) by Th2, ZF_LANG:5;
hence Free (x 'in' y) = {x,y} by A1, ZF_MODEL:1; ::_thesis: verum
end;
theorem Th60: :: ZF_LANG1:60
for p being ZF-formula holds Free ('not' p) = Free p
proof
let p be ZF-formula; ::_thesis: Free ('not' p) = Free p
( 'not' p is negative & the_argument_of ('not' p) = p ) by Th3, ZF_LANG:5;
hence Free ('not' p) = Free p by ZF_MODEL:1; ::_thesis: verum
end;
theorem Th61: :: ZF_LANG1:61
for p, q being ZF-formula holds Free (p '&' q) = (Free p) \/ (Free q)
proof
let p, q be ZF-formula; ::_thesis: Free (p '&' q) = (Free p) \/ (Free q)
A1: the_right_argument_of (p '&' q) = q by Th4;
( p '&' q is conjunctive & the_left_argument_of (p '&' q) = p ) by Th4, ZF_LANG:5;
hence Free (p '&' q) = (Free p) \/ (Free q) by A1, ZF_MODEL:1; ::_thesis: verum
end;
theorem Th62: :: ZF_LANG1:62
for p being ZF-formula
for x being Variable holds Free (All (x,p)) = (Free p) \ {x}
proof
let p be ZF-formula; ::_thesis: for x being Variable holds Free (All (x,p)) = (Free p) \ {x}
let x be Variable; ::_thesis: Free (All (x,p)) = (Free p) \ {x}
A1: the_scope_of (All (x,p)) = p by Th8;
( All (x,p) is universal & bound_in (All (x,p)) = x ) by Th8, ZF_LANG:5;
hence Free (All (x,p)) = (Free p) \ {x} by A1, ZF_MODEL:1; ::_thesis: verum
end;
theorem :: ZF_LANG1:63
for p, q being ZF-formula holds Free (p 'or' q) = (Free p) \/ (Free q)
proof
let p, q be ZF-formula; ::_thesis: Free (p 'or' q) = (Free p) \/ (Free q)
thus Free (p 'or' q) = Free (('not' p) '&' ('not' q)) by Th60
.= (Free ('not' p)) \/ (Free ('not' q)) by Th61
.= (Free p) \/ (Free ('not' q)) by Th60
.= (Free p) \/ (Free q) by Th60 ; ::_thesis: verum
end;
theorem Th64: :: ZF_LANG1:64
for p, q being ZF-formula holds Free (p => q) = (Free p) \/ (Free q)
proof
let p, q be ZF-formula; ::_thesis: Free (p => q) = (Free p) \/ (Free q)
thus Free (p => q) = Free (p '&' ('not' q)) by Th60
.= (Free p) \/ (Free ('not' q)) by Th61
.= (Free p) \/ (Free q) by Th60 ; ::_thesis: verum
end;
theorem :: ZF_LANG1:65
for p, q being ZF-formula holds Free (p <=> q) = (Free p) \/ (Free q)
proof
let p, q be ZF-formula; ::_thesis: Free (p <=> q) = (Free p) \/ (Free q)
thus Free (p <=> q) = (Free (p => q)) \/ (Free (q => p)) by Th61
.= ((Free p) \/ (Free q)) \/ (Free (q => p)) by Th64
.= ((Free p) \/ (Free q)) \/ ((Free q) \/ (Free p)) by Th64
.= (((Free p) \/ (Free q)) \/ (Free q)) \/ (Free p) by XBOOLE_1:4
.= ((Free p) \/ ((Free q) \/ (Free q))) \/ (Free p) by XBOOLE_1:4
.= ((Free p) \/ (Free p)) \/ (Free q) by XBOOLE_1:4
.= (Free p) \/ (Free q) ; ::_thesis: verum
end;
theorem Th66: :: ZF_LANG1:66
for p being ZF-formula
for x being Variable holds Free (Ex (x,p)) = (Free p) \ {x}
proof
let p be ZF-formula; ::_thesis: for x being Variable holds Free (Ex (x,p)) = (Free p) \ {x}
let x be Variable; ::_thesis: Free (Ex (x,p)) = (Free p) \ {x}
thus Free (Ex (x,p)) = Free (All (x,('not' p))) by Th60
.= (Free ('not' p)) \ {x} by Th62
.= (Free p) \ {x} by Th60 ; ::_thesis: verum
end;
theorem Th67: :: ZF_LANG1:67
for p being ZF-formula
for x, y being Variable holds Free (All (x,y,p)) = (Free p) \ {x,y}
proof
let p be ZF-formula; ::_thesis: for x, y being Variable holds Free (All (x,y,p)) = (Free p) \ {x,y}
let x, y be Variable; ::_thesis: Free (All (x,y,p)) = (Free p) \ {x,y}
thus Free (All (x,y,p)) = (Free (All (y,p))) \ {x} by Th62
.= ((Free p) \ {y}) \ {x} by Th62
.= (Free p) \ ({x} \/ {y}) by XBOOLE_1:41
.= (Free p) \ {x,y} by ENUMSET1:1 ; ::_thesis: verum
end;
theorem :: ZF_LANG1:68
for p being ZF-formula
for x, y, z being Variable holds Free (All (x,y,z,p)) = (Free p) \ {x,y,z}
proof
let p be ZF-formula; ::_thesis: for x, y, z being Variable holds Free (All (x,y,z,p)) = (Free p) \ {x,y,z}
let x, y, z be Variable; ::_thesis: Free (All (x,y,z,p)) = (Free p) \ {x,y,z}
thus Free (All (x,y,z,p)) = (Free (All (y,z,p))) \ {x} by Th62
.= ((Free p) \ {y,z}) \ {x} by Th67
.= (Free p) \ ({x} \/ {y,z}) by XBOOLE_1:41
.= (Free p) \ {x,y,z} by ENUMSET1:2 ; ::_thesis: verum
end;
theorem Th69: :: ZF_LANG1:69
for p being ZF-formula
for x, y being Variable holds Free (Ex (x,y,p)) = (Free p) \ {x,y}
proof
let p be ZF-formula; ::_thesis: for x, y being Variable holds Free (Ex (x,y,p)) = (Free p) \ {x,y}
let x, y be Variable; ::_thesis: Free (Ex (x,y,p)) = (Free p) \ {x,y}
thus Free (Ex (x,y,p)) = (Free (Ex (y,p))) \ {x} by Th66
.= ((Free p) \ {y}) \ {x} by Th66
.= (Free p) \ ({x} \/ {y}) by XBOOLE_1:41
.= (Free p) \ {x,y} by ENUMSET1:1 ; ::_thesis: verum
end;
theorem :: ZF_LANG1:70
for p being ZF-formula
for x, y, z being Variable holds Free (Ex (x,y,z,p)) = (Free p) \ {x,y,z}
proof
let p be ZF-formula; ::_thesis: for x, y, z being Variable holds Free (Ex (x,y,z,p)) = (Free p) \ {x,y,z}
let x, y, z be Variable; ::_thesis: Free (Ex (x,y,z,p)) = (Free p) \ {x,y,z}
thus Free (Ex (x,y,z,p)) = (Free (Ex (y,z,p))) \ {x} by Th66
.= ((Free p) \ {y,z}) \ {x} by Th69
.= (Free p) \ ({x} \/ {y,z}) by XBOOLE_1:41
.= (Free p) \ {x,y,z} by ENUMSET1:2 ; ::_thesis: verum
end;
scheme :: ZF_LANG1:sch 1
ZFInduction{ P1[ ZF-formula] } :
for H being ZF-formula holds P1[H]
provided
A1: for x1, x2 being Variable holds
( P1[x1 '=' x2] & P1[x1 'in' x2] ) and
A2: for H being ZF-formula st P1[H] holds
P1[ 'not' H] and
A3: for H1, H2 being ZF-formula st P1[H1] & P1[H2] holds
P1[H1 '&' H2] and
A4: for H being ZF-formula
for x being Variable st P1[H] holds
P1[ All (x,H)]
proof
A5: for H being ZF-formula st H is conjunctive & P1[ the_left_argument_of H] & P1[ the_right_argument_of H] holds
P1[H]
proof
let H be ZF-formula; ::_thesis: ( H is conjunctive & P1[ the_left_argument_of H] & P1[ the_right_argument_of H] implies P1[H] )
assume H is conjunctive ; ::_thesis: ( not P1[ the_left_argument_of H] or not P1[ the_right_argument_of H] or P1[H] )
then H = (the_left_argument_of H) '&' (the_right_argument_of H) by ZF_LANG:40;
hence ( not P1[ the_left_argument_of H] or not P1[ the_right_argument_of H] or P1[H] ) by A3; ::_thesis: verum
end;
A6: for H being ZF-formula st H is atomic holds
P1[H]
proof
let H be ZF-formula; ::_thesis: ( H is atomic implies P1[H] )
assume A7: ( H is being_equality or H is being_membership ) ; :: according to ZF_LANG:def_15 ::_thesis: P1[H]
A8: ( H is being_membership implies P1[H] )
proof
given x1, x2 being Variable such that A9: H = x1 'in' x2 ; :: according to ZF_LANG:def_11 ::_thesis: P1[H]
thus P1[H] by A1, A9; ::_thesis: verum
end;
( H is being_equality implies P1[H] )
proof
given x1, x2 being Variable such that A10: H = x1 '=' x2 ; :: according to ZF_LANG:def_10 ::_thesis: P1[H]
thus P1[H] by A1, A10; ::_thesis: verum
end;
hence P1[H] by A7, A8; ::_thesis: verum
end;
A11: for H being ZF-formula st H is universal & P1[ the_scope_of H] holds
P1[H]
proof
let H be ZF-formula; ::_thesis: ( H is universal & P1[ the_scope_of H] implies P1[H] )
assume H is universal ; ::_thesis: ( not P1[ the_scope_of H] or P1[H] )
then H = All ((bound_in H),(the_scope_of H)) by ZF_LANG:44;
hence ( not P1[ the_scope_of H] or P1[H] ) by A4; ::_thesis: verum
end;
A12: for H being ZF-formula st H is negative & P1[ the_argument_of H] holds
P1[H]
proof
let H be ZF-formula; ::_thesis: ( H is negative & P1[ the_argument_of H] implies P1[H] )
assume H is negative ; ::_thesis: ( not P1[ the_argument_of H] or P1[H] )
then H = 'not' (the_argument_of H) by ZF_LANG:def_30;
hence ( not P1[ the_argument_of H] or P1[H] ) by A2; ::_thesis: verum
end;
thus for H being ZF-formula holds P1[H] from ZF_LANG:sch_1(A6, A12, A5, A11); ::_thesis: verum
end;
definition
let D, D1, D2 be non empty set ;
let f be Function of D,D1;
assume A1: D1 c= D2 ;
funcD2 ! f -> Function of D,D2 equals :: ZF_LANG1:def 1
f;
correctness
coherence
f is Function of D,D2;
proof
rng f c= D1 by RELAT_1:def_19;
then A2: rng f c= D2 by A1, XBOOLE_1:1;
dom f = D by FUNCT_2:def_1;
hence f is Function of D,D2 by A2, FUNCT_2:def_1, RELSET_1:4; ::_thesis: verum
end;
end;
:: deftheorem defines ! ZF_LANG1:def_1_:_
for D, D1, D2 being non empty set
for f being Function of D,D1 st D1 c= D2 holds
D2 ! f = f;
notation
let E be non empty set ;
let f be Function of VAR,E;
let x be Variable;
let e be Element of E;
synonym f / (x,e) for E +* (f,x);
end;
definition
let E be non empty set ;
let f be Function of VAR,E;
let x be Variable;
let e be Element of E;
:: original: /
redefine funcf / (x,e) -> Function of VAR,E;
coherence
x / (e,) is Function of VAR,E
proof
f +* (x,e) is Function of VAR,E ;
hence x / (e,) is Function of VAR,E ; ::_thesis: verum
end;
end;
theorem Th71: :: ZF_LANG1:71
for H being ZF-formula
for x being Variable
for M being non empty set
for v being Function of VAR,M holds
( M,v |= All (x,H) iff for m being Element of M holds M,v / (x,m) |= H )
proof
let H be ZF-formula; ::_thesis: for x being Variable
for M being non empty set
for v being Function of VAR,M holds
( M,v |= All (x,H) iff for m being Element of M holds M,v / (x,m) |= H )
let x be Variable; ::_thesis: for M being non empty set
for v being Function of VAR,M holds
( M,v |= All (x,H) iff for m being Element of M holds M,v / (x,m) |= H )
let M be non empty set ; ::_thesis: for v being Function of VAR,M holds
( M,v |= All (x,H) iff for m being Element of M holds M,v / (x,m) |= H )
let v be Function of VAR,M; ::_thesis: ( M,v |= All (x,H) iff for m being Element of M holds M,v / (x,m) |= H )
thus ( M,v |= All (x,H) implies for m being Element of M holds M,v / (x,m) |= H ) ::_thesis: ( ( for m being Element of M holds M,v / (x,m) |= H ) implies M,v |= All (x,H) )
proof
assume A1: M,v |= All (x,H) ; ::_thesis: for m being Element of M holds M,v / (x,m) |= H
let m be Element of M; ::_thesis: M,v / (x,m) |= H
for y being Variable st (v / (x,m)) . y <> v . y holds
x = y by FUNCT_7:32;
hence M,v / (x,m) |= H by A1, ZF_MODEL:16; ::_thesis: verum
end;
assume A2: for m being Element of M holds M,v / (x,m) |= H ; ::_thesis: M,v |= All (x,H)
now__::_thesis:_for_v9_being_Function_of_VAR,M_st_(_for_y_being_Variable_st_v9_._y_<>_v_._y_holds_
x_=_y_)_holds_
M,v9_|=_H
let v9 be Function of VAR,M; ::_thesis: ( ( for y being Variable st v9 . y <> v . y holds
x = y ) implies M,v9 |= H )
assume for y being Variable st v9 . y <> v . y holds
x = y ; ::_thesis: M,v9 |= H
then v9 = v / (x,(v9 . x)) by FUNCT_7:129;
hence M,v9 |= H by A2; ::_thesis: verum
end;
hence M,v |= All (x,H) by ZF_MODEL:16; ::_thesis: verum
end;
theorem Th72: :: ZF_LANG1:72
for H being ZF-formula
for x being Variable
for M being non empty set
for m being Element of M
for v being Function of VAR,M holds
( M,v |= All (x,H) iff M,v / (x,m) |= All (x,H) )
proof
let H be ZF-formula; ::_thesis: for x being Variable
for M being non empty set
for m being Element of M
for v being Function of VAR,M holds
( M,v |= All (x,H) iff M,v / (x,m) |= All (x,H) )
let x be Variable; ::_thesis: for M being non empty set
for m being Element of M
for v being Function of VAR,M holds
( M,v |= All (x,H) iff M,v / (x,m) |= All (x,H) )
let M be non empty set ; ::_thesis: for m being Element of M
for v being Function of VAR,M holds
( M,v |= All (x,H) iff M,v / (x,m) |= All (x,H) )
let m be Element of M; ::_thesis: for v being Function of VAR,M holds
( M,v |= All (x,H) iff M,v / (x,m) |= All (x,H) )
let v be Function of VAR,M; ::_thesis: ( M,v |= All (x,H) iff M,v / (x,m) |= All (x,H) )
A1: for v being Function of VAR,M
for m being Element of M st M,v |= All (x,H) holds
M,v / (x,m) |= All (x,H)
proof
let v be Function of VAR,M; ::_thesis: for m being Element of M st M,v |= All (x,H) holds
M,v / (x,m) |= All (x,H)
let m be Element of M; ::_thesis: ( M,v |= All (x,H) implies M,v / (x,m) |= All (x,H) )
assume A2: M,v |= All (x,H) ; ::_thesis: M,v / (x,m) |= All (x,H)
now__::_thesis:_for_m9_being_Element_of_M_holds_M,(v_/_(x,m))_/_(x,m9)_|=_H
let m9 be Element of M; ::_thesis: M,(v / (x,m)) / (x,m9) |= H
(v / (x,m)) / (x,m9) = v / (x,m9) by FUNCT_7:34;
hence M,(v / (x,m)) / (x,m9) |= H by A2, Th71; ::_thesis: verum
end;
hence M,v / (x,m) |= All (x,H) by Th71; ::_thesis: verum
end;
(v / (x,m)) / (x,(v . x)) = v / (x,(v . x)) by FUNCT_7:34
.= v by FUNCT_7:35 ;
hence ( M,v |= All (x,H) iff M,v / (x,m) |= All (x,H) ) by A1; ::_thesis: verum
end;
theorem Th73: :: ZF_LANG1:73
for H being ZF-formula
for x being Variable
for M being non empty set
for v being Function of VAR,M holds
( M,v |= Ex (x,H) iff ex m being Element of M st M,v / (x,m) |= H )
proof
let H be ZF-formula; ::_thesis: for x being Variable
for M being non empty set
for v being Function of VAR,M holds
( M,v |= Ex (x,H) iff ex m being Element of M st M,v / (x,m) |= H )
let x be Variable; ::_thesis: for M being non empty set
for v being Function of VAR,M holds
( M,v |= Ex (x,H) iff ex m being Element of M st M,v / (x,m) |= H )
let M be non empty set ; ::_thesis: for v being Function of VAR,M holds
( M,v |= Ex (x,H) iff ex m being Element of M st M,v / (x,m) |= H )
let v be Function of VAR,M; ::_thesis: ( M,v |= Ex (x,H) iff ex m being Element of M st M,v / (x,m) |= H )
thus ( M,v |= Ex (x,H) implies ex m being Element of M st M,v / (x,m) |= H ) ::_thesis: ( ex m being Element of M st M,v / (x,m) |= H implies M,v |= Ex (x,H) )
proof
assume M,v |= Ex (x,H) ; ::_thesis: ex m being Element of M st M,v / (x,m) |= H
then consider v9 being Function of VAR,M such that
A1: ( ( for y being Variable st v9 . y <> v . y holds
x = y ) & M,v9 |= H ) by ZF_MODEL:20;
take v9 . x ; ::_thesis: M,v / (x,(v9 . x)) |= H
thus M,v / (x,(v9 . x)) |= H by A1, FUNCT_7:129; ::_thesis: verum
end;
given m being Element of M such that A2: M,v / (x,m) |= H ; ::_thesis: M,v |= Ex (x,H)
now__::_thesis:_ex_v9_being_Function_of_VAR,M_st_
(_(_for_y_being_Variable_st_v9_._y_<>_v_._y_holds_
x_=_y_)_&_M,v9_|=_H_)
take v9 = v / (x,m); ::_thesis: ( ( for y being Variable st v9 . y <> v . y holds
x = y ) & M,v9 |= H )
thus for y being Variable st v9 . y <> v . y holds
x = y by FUNCT_7:32; ::_thesis: M,v9 |= H
thus M,v9 |= H by A2; ::_thesis: verum
end;
hence M,v |= Ex (x,H) by ZF_MODEL:20; ::_thesis: verum
end;
theorem :: ZF_LANG1:74
for H being ZF-formula
for x being Variable
for M being non empty set
for m being Element of M
for v being Function of VAR,M holds
( M,v |= Ex (x,H) iff M,v / (x,m) |= Ex (x,H) )
proof
let H be ZF-formula; ::_thesis: for x being Variable
for M being non empty set
for m being Element of M
for v being Function of VAR,M holds
( M,v |= Ex (x,H) iff M,v / (x,m) |= Ex (x,H) )
let x be Variable; ::_thesis: for M being non empty set
for m being Element of M
for v being Function of VAR,M holds
( M,v |= Ex (x,H) iff M,v / (x,m) |= Ex (x,H) )
let M be non empty set ; ::_thesis: for m being Element of M
for v being Function of VAR,M holds
( M,v |= Ex (x,H) iff M,v / (x,m) |= Ex (x,H) )
let m be Element of M; ::_thesis: for v being Function of VAR,M holds
( M,v |= Ex (x,H) iff M,v / (x,m) |= Ex (x,H) )
let v be Function of VAR,M; ::_thesis: ( M,v |= Ex (x,H) iff M,v / (x,m) |= Ex (x,H) )
A1: for v being Function of VAR,M
for m being Element of M st M,v |= Ex (x,H) holds
M,v / (x,m) |= Ex (x,H)
proof
let v be Function of VAR,M; ::_thesis: for m being Element of M st M,v |= Ex (x,H) holds
M,v / (x,m) |= Ex (x,H)
let m be Element of M; ::_thesis: ( M,v |= Ex (x,H) implies M,v / (x,m) |= Ex (x,H) )
assume M,v |= Ex (x,H) ; ::_thesis: M,v / (x,m) |= Ex (x,H)
then consider m9 being Element of M such that
A2: M,v / (x,m9) |= H by Th73;
(v / (x,m)) / (x,m9) = v / (x,m9) by FUNCT_7:34;
hence M,v / (x,m) |= Ex (x,H) by A2, Th73; ::_thesis: verum
end;
(v / (x,m)) / (x,(v . x)) = v / (x,(v . x)) by FUNCT_7:34
.= v by FUNCT_7:35 ;
hence ( M,v |= Ex (x,H) iff M,v / (x,m) |= Ex (x,H) ) by A1; ::_thesis: verum
end;
theorem :: ZF_LANG1:75
for H being ZF-formula
for M being non empty set
for v, v9 being Function of VAR,M st ( for x being Variable st x in Free H holds
v9 . x = v . x ) & M,v |= H holds
M,v9 |= H
proof
let H be ZF-formula; ::_thesis: for M being non empty set
for v, v9 being Function of VAR,M st ( for x being Variable st x in Free H holds
v9 . x = v . x ) & M,v |= H holds
M,v9 |= H
let M be non empty set ; ::_thesis: for v, v9 being Function of VAR,M st ( for x being Variable st x in Free H holds
v9 . x = v . x ) & M,v |= H holds
M,v9 |= H
defpred S1[ ZF-formula] means for v, v9 being Function of VAR,M st ( for x being Variable st x in Free $1 holds
v9 . x = v . x ) & M,v |= $1 holds
M,v9 |= $1;
A1: for H1, H2 being ZF-formula st S1[H1] & S1[H2] holds
S1[H1 '&' H2]
proof
let H1, H2 be ZF-formula; ::_thesis: ( S1[H1] & S1[H2] implies S1[H1 '&' H2] )
assume that
A2: S1[H1] and
A3: S1[H2] ; ::_thesis: S1[H1 '&' H2]
let v, v9 be Function of VAR,M; ::_thesis: ( ( for x being Variable st x in Free (H1 '&' H2) holds
v9 . x = v . x ) & M,v |= H1 '&' H2 implies M,v9 |= H1 '&' H2 )
assume A4: for x being Variable st x in Free (H1 '&' H2) holds
v9 . x = v . x ; ::_thesis: ( not M,v |= H1 '&' H2 or M,v9 |= H1 '&' H2 )
A5: Free (H1 '&' H2) = (Free H1) \/ (Free H2) by Th61;
A6: now__::_thesis:_for_x_being_Variable_st_x_in_Free_H2_holds_
v9_._x_=_v_._x
let x be Variable; ::_thesis: ( x in Free H2 implies v9 . x = v . x )
assume x in Free H2 ; ::_thesis: v9 . x = v . x
then x in Free (H1 '&' H2) by A5, XBOOLE_0:def_3;
hence v9 . x = v . x by A4; ::_thesis: verum
end;
assume A7: M,v |= H1 '&' H2 ; ::_thesis: M,v9 |= H1 '&' H2
then M,v |= H2 by ZF_MODEL:15;
then A8: M,v9 |= H2 by A3, A6;
A9: now__::_thesis:_for_x_being_Variable_st_x_in_Free_H1_holds_
v9_._x_=_v_._x
let x be Variable; ::_thesis: ( x in Free H1 implies v9 . x = v . x )
assume x in Free H1 ; ::_thesis: v9 . x = v . x
then x in Free (H1 '&' H2) by A5, XBOOLE_0:def_3;
hence v9 . x = v . x by A4; ::_thesis: verum
end;
M,v |= H1 by A7, ZF_MODEL:15;
then M,v9 |= H1 by A2, A9;
hence M,v9 |= H1 '&' H2 by A8, ZF_MODEL:15; ::_thesis: verum
end;
A10: for x1, x2 being Variable holds
( S1[x1 '=' x2] & S1[x1 'in' x2] )
proof
let x1, x2 be Variable; ::_thesis: ( S1[x1 '=' x2] & S1[x1 'in' x2] )
A11: Free (x1 '=' x2) = {x1,x2} by Th58;
thus S1[x1 '=' x2] ::_thesis: S1[x1 'in' x2]
proof
let v, v9 be Function of VAR,M; ::_thesis: ( ( for x being Variable st x in Free (x1 '=' x2) holds
v9 . x = v . x ) & M,v |= x1 '=' x2 implies M,v9 |= x1 '=' x2 )
assume A12: for x being Variable st x in Free (x1 '=' x2) holds
v9 . x = v . x ; ::_thesis: ( not M,v |= x1 '=' x2 or M,v9 |= x1 '=' x2 )
x2 in Free (x1 '=' x2) by A11, TARSKI:def_2;
then A13: v9 . x2 = v . x2 by A12;
assume M,v |= x1 '=' x2 ; ::_thesis: M,v9 |= x1 '=' x2
then A14: v . x1 = v . x2 by ZF_MODEL:12;
x1 in Free (x1 '=' x2) by A11, TARSKI:def_2;
then v9 . x1 = v . x1 by A12;
hence M,v9 |= x1 '=' x2 by A14, A13, ZF_MODEL:12; ::_thesis: verum
end;
let v, v9 be Function of VAR,M; ::_thesis: ( ( for x being Variable st x in Free (x1 'in' x2) holds
v9 . x = v . x ) & M,v |= x1 'in' x2 implies M,v9 |= x1 'in' x2 )
assume A15: for x being Variable st x in Free (x1 'in' x2) holds
v9 . x = v . x ; ::_thesis: ( not M,v |= x1 'in' x2 or M,v9 |= x1 'in' x2 )
A16: Free (x1 'in' x2) = {x1,x2} by Th59;
then x2 in Free (x1 'in' x2) by TARSKI:def_2;
then A17: v9 . x2 = v . x2 by A15;
assume M,v |= x1 'in' x2 ; ::_thesis: M,v9 |= x1 'in' x2
then A18: v . x1 in v . x2 by ZF_MODEL:13;
x1 in Free (x1 'in' x2) by A16, TARSKI:def_2;
then v9 . x1 = v . x1 by A15;
hence M,v9 |= x1 'in' x2 by A18, A17, ZF_MODEL:13; ::_thesis: verum
end;
A19: for H being ZF-formula
for x being Variable st S1[H] holds
S1[ All (x,H)]
proof
let H be ZF-formula; ::_thesis: for x being Variable st S1[H] holds
S1[ All (x,H)]
let x1 be Variable; ::_thesis: ( S1[H] implies S1[ All (x1,H)] )
assume A20: S1[H] ; ::_thesis: S1[ All (x1,H)]
let v, v9 be Function of VAR,M; ::_thesis: ( ( for x being Variable st x in Free (All (x1,H)) holds
v9 . x = v . x ) & M,v |= All (x1,H) implies M,v9 |= All (x1,H) )
assume that
A21: for x being Variable st x in Free (All (x1,H)) holds
v9 . x = v . x and
A22: M,v |= All (x1,H) ; ::_thesis: M,v9 |= All (x1,H)
now__::_thesis:_for_m_being_Element_of_M_holds_M,v9_/_(x1,m)_|=_H
let m be Element of M; ::_thesis: M,v9 / (x1,m) |= H
A23: Free (All (x1,H)) = (Free H) \ {x1} by Th62;
A24: now__::_thesis:_for_x_being_Variable_st_x_in_Free_H_holds_
(v9_/_(x1,m))_._x_=_(v_/_(x1,m))_._x
let x be Variable; ::_thesis: ( x in Free H implies (v9 / (x1,m)) . x = (v / (x1,m)) . x )
assume x in Free H ; ::_thesis: (v9 / (x1,m)) . x = (v / (x1,m)) . x
then ( ( x in Free (All (x1,H)) & not x in {x1} ) or x in {x1} ) by A23, XBOOLE_0:def_5;
then ( ( v9 . x = v . x & x <> x1 ) or x = x1 ) by A21, TARSKI:def_1;
then ( ( (v9 / (x1,m)) . x = v . x & v . x = (v / (x1,m)) . x ) or ( (v / (x1,m)) . x = m & (v9 / (x1,m)) . x = m ) ) by FUNCT_7:32, FUNCT_7:128;
hence (v9 / (x1,m)) . x = (v / (x1,m)) . x ; ::_thesis: verum
end;
M,v / (x1,m) |= H by A22, Th71;
hence M,v9 / (x1,m) |= H by A20, A24; ::_thesis: verum
end;
hence M,v9 |= All (x1,H) by Th71; ::_thesis: verum
end;
A25: for H being ZF-formula st S1[H] holds
S1[ 'not' H]
proof
let H be ZF-formula; ::_thesis: ( S1[H] implies S1[ 'not' H] )
assume A26: S1[H] ; ::_thesis: S1[ 'not' H]
let v, v9 be Function of VAR,M; ::_thesis: ( ( for x being Variable st x in Free ('not' H) holds
v9 . x = v . x ) & M,v |= 'not' H implies M,v9 |= 'not' H )
assume A27: for x being Variable st x in Free ('not' H) holds
v9 . x = v . x ; ::_thesis: ( not M,v |= 'not' H or M,v9 |= 'not' H )
A28: now__::_thesis:_for_x_being_Variable_st_x_in_Free_H_holds_
v_._x_=_v9_._x
let x be Variable; ::_thesis: ( x in Free H implies v . x = v9 . x )
assume x in Free H ; ::_thesis: v . x = v9 . x
then x in Free ('not' H) by Th60;
hence v . x = v9 . x by A27; ::_thesis: verum
end;
assume M,v |= 'not' H ; ::_thesis: M,v9 |= 'not' H
then not M,v |= H by ZF_MODEL:14;
then not M,v9 |= H by A26, A28;
hence M,v9 |= 'not' H by ZF_MODEL:14; ::_thesis: verum
end;
for H being ZF-formula holds S1[H] from ZF_LANG1:sch_1(A10, A25, A1, A19);
hence for v, v9 being Function of VAR,M st ( for x being Variable st x in Free H holds
v9 . x = v . x ) & M,v |= H holds
M,v9 |= H ; ::_thesis: verum
end;
registration
let H be ZF-formula;
cluster Free H -> finite ;
coherence
Free H is finite
proof
defpred S1[ ZF-formula] means Free H is finite ;
A1: for p, q being ZF-formula st S1[p] & S1[q] holds
S1[p '&' q]
proof
let p, q be ZF-formula; ::_thesis: ( S1[p] & S1[q] implies S1[p '&' q] )
Free (p '&' q) = (Free p) \/ (Free q) by Th61;
hence ( S1[p] & S1[q] implies S1[p '&' q] ) ; ::_thesis: verum
end;
A2: for p being ZF-formula
for x being Variable st S1[p] holds
S1[ All (x,p)]
proof
let p be ZF-formula; ::_thesis: for x being Variable st S1[p] holds
S1[ All (x,p)]
let x be Variable; ::_thesis: ( S1[p] implies S1[ All (x,p)] )
Free (All (x,p)) = (Free p) \ {x} by Th62;
hence ( S1[p] implies S1[ All (x,p)] ) ; ::_thesis: verum
end;
A3: for x, y being Variable holds
( S1[x '=' y] & S1[x 'in' y] )
proof
let x, y be Variable; ::_thesis: ( S1[x '=' y] & S1[x 'in' y] )
Free (x '=' y) = {x,y} by Th58;
hence ( S1[x '=' y] & S1[x 'in' y] ) by Th59; ::_thesis: verum
end;
A4: for p being ZF-formula st S1[p] holds
S1[ 'not' p] by Th60;
for p being ZF-formula holds S1[p] from ZF_LANG1:sch_1(A3, A4, A1, A2);
hence Free H is finite ; ::_thesis: verum
end;
end;
theorem :: ZF_LANG1:76
for i, j being Element of NAT st x. i = x. j holds
i = j ;
theorem :: ZF_LANG1:77
for x being Variable ex i being Element of NAT st x = x. i
proof
let x be Variable; ::_thesis: ex i being Element of NAT st x = x. i
x in VAR ;
then consider j being Element of NAT such that
A1: x = j and
A2: 5 <= j ;
consider i being Nat such that
A3: j = 5 + i by A2, NAT_1:10;
reconsider i = i as Element of NAT by ORDINAL1:def_12;
take i ; ::_thesis: x = x. i
thus x = x. i by A1, A3; ::_thesis: verum
end;
theorem Th78: :: ZF_LANG1:78
for x being Variable
for M being non empty set
for v being Function of VAR,M holds M,v |= x '=' x
proof
let x be Variable; ::_thesis: for M being non empty set
for v being Function of VAR,M holds M,v |= x '=' x
let M be non empty set ; ::_thesis: for v being Function of VAR,M holds M,v |= x '=' x
let v be Function of VAR,M; ::_thesis: M,v |= x '=' x
v . x = v . x ;
hence M,v |= x '=' x by ZF_MODEL:12; ::_thesis: verum
end;
theorem Th79: :: ZF_LANG1:79
for x being Variable
for M being non empty set holds M |= x '=' x
proof
let x be Variable; ::_thesis: for M being non empty set holds M |= x '=' x
let M be non empty set ; ::_thesis: M |= x '=' x
for v being Function of VAR,M holds M,v |= x '=' x by Th78;
hence M |= x '=' x by ZF_MODEL:def_5; ::_thesis: verum
end;
theorem Th80: :: ZF_LANG1:80
for x being Variable
for M being non empty set
for v being Function of VAR,M holds not M,v |= x 'in' x
proof
let x be Variable; ::_thesis: for M being non empty set
for v being Function of VAR,M holds not M,v |= x 'in' x
let M be non empty set ; ::_thesis: for v being Function of VAR,M holds not M,v |= x 'in' x
let v be Function of VAR,M; ::_thesis: not M,v |= x 'in' x
not v . x in v . x ;
hence not M,v |= x 'in' x by ZF_MODEL:13; ::_thesis: verum
end;
theorem Th81: :: ZF_LANG1:81
for x being Variable
for M being non empty set holds
( not M |= x 'in' x & M |= 'not' (x 'in' x) )
proof
let x be Variable; ::_thesis: for M being non empty set holds
( not M |= x 'in' x & M |= 'not' (x 'in' x) )
let M be non empty set ; ::_thesis: ( not M |= x 'in' x & M |= 'not' (x 'in' x) )
set v = the Function of VAR,M;
not M, the Function of VAR,M |= x 'in' x by Th80;
hence not M |= x 'in' x by ZF_MODEL:def_5; ::_thesis: M |= 'not' (x 'in' x)
let v be Function of VAR,M; :: according to ZF_MODEL:def_5 ::_thesis: M,v |= 'not' (x 'in' x)
not M,v |= x 'in' x by Th80;
hence M,v |= 'not' (x 'in' x) by ZF_MODEL:14; ::_thesis: verum
end;
theorem :: ZF_LANG1:82
for x, y being Variable
for M being non empty set holds
( M |= x '=' y iff ( x = y or ex a being set st {a} = M ) )
proof
let x, y be Variable; ::_thesis: for M being non empty set holds
( M |= x '=' y iff ( x = y or ex a being set st {a} = M ) )
let M be non empty set ; ::_thesis: ( M |= x '=' y iff ( x = y or ex a being set st {a} = M ) )
thus ( not M |= x '=' y or x = y or ex a being set st {a} = M ) ::_thesis: ( ( x = y or ex a being set st {a} = M ) implies M |= x '=' y )
proof
set v = the Function of VAR,M;
set m = the Element of M;
assume that
A1: for v being Function of VAR,M holds M,v |= x '=' y and
A2: x <> y ; :: according to ZF_MODEL:def_5 ::_thesis: ex a being set st {a} = M
reconsider a = the Element of M as set ;
take a ; ::_thesis: {a} = M
thus {a} c= M by ZFMISC_1:31; :: according to XBOOLE_0:def_10 ::_thesis: M c= {a}
let b be set ; :: according to TARSKI:def_3 ::_thesis: ( not b in M or b in {a} )
assume that
A3: b in M and
A4: not b in {a} ; ::_thesis: contradiction
reconsider b = b as Element of M by A3;
M,( the Function of VAR,M / (x, the Element of M)) / (y,b) |= x '=' y by A1;
then A5: (( the Function of VAR,M / (x, the Element of M)) / (y,b)) . x = (( the Function of VAR,M / (x, the Element of M)) / (y,b)) . y by ZF_MODEL:12;
A6: ( ( the Function of VAR,M / (x, the Element of M)) . x = the Element of M & (( the Function of VAR,M / (x, the Element of M)) / (y,b)) . y = b ) by FUNCT_7:128;
(( the Function of VAR,M / (x, the Element of M)) / (y,b)) . x = ( the Function of VAR,M / (x, the Element of M)) . x by A2, FUNCT_7:32;
hence contradiction by A4, A5, A6, TARSKI:def_1; ::_thesis: verum
end;
now__::_thesis:_(_ex_a_being_set_st_{a}_=_M_implies_for_v_being_Function_of_VAR,M_holds_M,v_|=_x_'='_y_)
given a being set such that A7: {a} = M ; ::_thesis: for v being Function of VAR,M holds M,v |= x '=' y
let v be Function of VAR,M; ::_thesis: M,v |= x '=' y
( v . x = a & v . y = a ) by A7, TARSKI:def_1;
hence M,v |= x '=' y by ZF_MODEL:12; ::_thesis: verum
end;
hence ( ( x = y or ex a being set st {a} = M ) implies M |= x '=' y ) by Th79, ZF_MODEL:def_5; ::_thesis: verum
end;
theorem :: ZF_LANG1:83
for x, y being Variable
for M being non empty set holds
( M |= 'not' (x 'in' y) iff ( x = y or for X being set st X in M holds
X misses M ) )
proof
let x, y be Variable; ::_thesis: for M being non empty set holds
( M |= 'not' (x 'in' y) iff ( x = y or for X being set st X in M holds
X misses M ) )
let M be non empty set ; ::_thesis: ( M |= 'not' (x 'in' y) iff ( x = y or for X being set st X in M holds
X misses M ) )
thus ( not M |= 'not' (x 'in' y) or x = y or for X being set st X in M holds
X misses M ) ::_thesis: ( ( x = y or for X being set st X in M holds
X misses M ) implies M |= 'not' (x 'in' y) )
proof
set v = the Function of VAR,M;
assume that
A1: for v being Function of VAR,M holds M,v |= 'not' (x 'in' y) and
A2: x <> y ; :: according to ZF_MODEL:def_5 ::_thesis: for X being set st X in M holds
X misses M
let X be set ; ::_thesis: ( X in M implies X misses M )
set a = the Element of X /\ M;
assume X in M ; ::_thesis: X misses M
then reconsider m = X as Element of M ;
assume A3: X /\ M <> {} ; :: according to XBOOLE_0:def_7 ::_thesis: contradiction
then reconsider a = the Element of X /\ M as Element of M by XBOOLE_0:def_4;
M,( the Function of VAR,M / (x,a)) / (y,m) |= 'not' (x 'in' y) by A1;
then not M,( the Function of VAR,M / (x,a)) / (y,m) |= x 'in' y by ZF_MODEL:14;
then A4: not (( the Function of VAR,M / (x,a)) / (y,m)) . x in (( the Function of VAR,M / (x,a)) / (y,m)) . y by ZF_MODEL:13;
A5: ( ( the Function of VAR,M / (x,a)) . x = a & (( the Function of VAR,M / (x,a)) / (y,m)) . y = m ) by FUNCT_7:128;
(( the Function of VAR,M / (x,a)) / (y,m)) . x = ( the Function of VAR,M / (x,a)) . x by A2, FUNCT_7:32;
hence contradiction by A3, A4, A5, XBOOLE_0:def_4; ::_thesis: verum
end;
now__::_thesis:_(_(_for_X_being_set_st_X_in_M_holds_
X_misses_M_)_implies_for_v_being_Function_of_VAR,M_holds_M,v_|=_'not'_(x_'in'_y)_)
assume A6: for X being set st X in M holds
X misses M ; ::_thesis: for v being Function of VAR,M holds M,v |= 'not' (x 'in' y)
let v be Function of VAR,M; ::_thesis: M,v |= 'not' (x 'in' y)
v . y misses M by A6;
then not v . x in v . y by XBOOLE_0:3;
then not M,v |= x 'in' y by ZF_MODEL:13;
hence M,v |= 'not' (x 'in' y) by ZF_MODEL:14; ::_thesis: verum
end;
hence ( ( x = y or for X being set st X in M holds
X misses M ) implies M |= 'not' (x 'in' y) ) by Th81, ZF_MODEL:def_5; ::_thesis: verum
end;
theorem :: ZF_LANG1:84
for H being ZF-formula
for M being non empty set
for v being Function of VAR,M st H is being_equality holds
( M,v |= H iff v . (Var1 H) = v . (Var2 H) )
proof
let H be ZF-formula; ::_thesis: for M being non empty set
for v being Function of VAR,M st H is being_equality holds
( M,v |= H iff v . (Var1 H) = v . (Var2 H) )
let M be non empty set ; ::_thesis: for v being Function of VAR,M st H is being_equality holds
( M,v |= H iff v . (Var1 H) = v . (Var2 H) )
let v be Function of VAR,M; ::_thesis: ( H is being_equality implies ( M,v |= H iff v . (Var1 H) = v . (Var2 H) ) )
assume H is being_equality ; ::_thesis: ( M,v |= H iff v . (Var1 H) = v . (Var2 H) )
then H = (Var1 H) '=' (Var2 H) by ZF_LANG:36;
hence ( M,v |= H iff v . (Var1 H) = v . (Var2 H) ) by ZF_MODEL:12; ::_thesis: verum
end;
theorem :: ZF_LANG1:85
for H being ZF-formula
for M being non empty set
for v being Function of VAR,M st H is being_membership holds
( M,v |= H iff v . (Var1 H) in v . (Var2 H) )
proof
let H be ZF-formula; ::_thesis: for M being non empty set
for v being Function of VAR,M st H is being_membership holds
( M,v |= H iff v . (Var1 H) in v . (Var2 H) )
let M be non empty set ; ::_thesis: for v being Function of VAR,M st H is being_membership holds
( M,v |= H iff v . (Var1 H) in v . (Var2 H) )
let v be Function of VAR,M; ::_thesis: ( H is being_membership implies ( M,v |= H iff v . (Var1 H) in v . (Var2 H) ) )
assume H is being_membership ; ::_thesis: ( M,v |= H iff v . (Var1 H) in v . (Var2 H) )
then H = (Var1 H) 'in' (Var2 H) by ZF_LANG:37;
hence ( M,v |= H iff v . (Var1 H) in v . (Var2 H) ) by ZF_MODEL:13; ::_thesis: verum
end;
theorem :: ZF_LANG1:86
for H being ZF-formula
for M being non empty set
for v being Function of VAR,M st H is negative holds
( M,v |= H iff not M,v |= the_argument_of H )
proof
let H be ZF-formula; ::_thesis: for M being non empty set
for v being Function of VAR,M st H is negative holds
( M,v |= H iff not M,v |= the_argument_of H )
let M be non empty set ; ::_thesis: for v being Function of VAR,M st H is negative holds
( M,v |= H iff not M,v |= the_argument_of H )
let v be Function of VAR,M; ::_thesis: ( H is negative implies ( M,v |= H iff not M,v |= the_argument_of H ) )
assume H is negative ; ::_thesis: ( M,v |= H iff not M,v |= the_argument_of H )
then H = 'not' (the_argument_of H) by ZF_LANG:def_30;
hence ( M,v |= H iff not M,v |= the_argument_of H ) by ZF_MODEL:14; ::_thesis: verum
end;
theorem :: ZF_LANG1:87
for H being ZF-formula
for M being non empty set
for v being Function of VAR,M st H is conjunctive holds
( M,v |= H iff ( M,v |= the_left_argument_of H & M,v |= the_right_argument_of H ) )
proof
let H be ZF-formula; ::_thesis: for M being non empty set
for v being Function of VAR,M st H is conjunctive holds
( M,v |= H iff ( M,v |= the_left_argument_of H & M,v |= the_right_argument_of H ) )
let M be non empty set ; ::_thesis: for v being Function of VAR,M st H is conjunctive holds
( M,v |= H iff ( M,v |= the_left_argument_of H & M,v |= the_right_argument_of H ) )
let v be Function of VAR,M; ::_thesis: ( H is conjunctive implies ( M,v |= H iff ( M,v |= the_left_argument_of H & M,v |= the_right_argument_of H ) ) )
assume H is conjunctive ; ::_thesis: ( M,v |= H iff ( M,v |= the_left_argument_of H & M,v |= the_right_argument_of H ) )
then H = (the_left_argument_of H) '&' (the_right_argument_of H) by ZF_LANG:40;
hence ( M,v |= H iff ( M,v |= the_left_argument_of H & M,v |= the_right_argument_of H ) ) by ZF_MODEL:15; ::_thesis: verum
end;
theorem :: ZF_LANG1:88
for H being ZF-formula
for M being non empty set
for v being Function of VAR,M st H is universal holds
( M,v |= H iff for m being Element of M holds M,v / ((bound_in H),m) |= the_scope_of H )
proof
let H be ZF-formula; ::_thesis: for M being non empty set
for v being Function of VAR,M st H is universal holds
( M,v |= H iff for m being Element of M holds M,v / ((bound_in H),m) |= the_scope_of H )
let M be non empty set ; ::_thesis: for v being Function of VAR,M st H is universal holds
( M,v |= H iff for m being Element of M holds M,v / ((bound_in H),m) |= the_scope_of H )
let v be Function of VAR,M; ::_thesis: ( H is universal implies ( M,v |= H iff for m being Element of M holds M,v / ((bound_in H),m) |= the_scope_of H ) )
assume H is universal ; ::_thesis: ( M,v |= H iff for m being Element of M holds M,v / ((bound_in H),m) |= the_scope_of H )
then H = All ((bound_in H),(the_scope_of H)) by ZF_LANG:44;
hence ( M,v |= H iff for m being Element of M holds M,v / ((bound_in H),m) |= the_scope_of H ) by Th71; ::_thesis: verum
end;
theorem :: ZF_LANG1:89
for H being ZF-formula
for M being non empty set
for v being Function of VAR,M st H is disjunctive holds
( M,v |= H iff ( M,v |= the_left_argument_of H or M,v |= the_right_argument_of H ) )
proof
let H be ZF-formula; ::_thesis: for M being non empty set
for v being Function of VAR,M st H is disjunctive holds
( M,v |= H iff ( M,v |= the_left_argument_of H or M,v |= the_right_argument_of H ) )
let M be non empty set ; ::_thesis: for v being Function of VAR,M st H is disjunctive holds
( M,v |= H iff ( M,v |= the_left_argument_of H or M,v |= the_right_argument_of H ) )
let v be Function of VAR,M; ::_thesis: ( H is disjunctive implies ( M,v |= H iff ( M,v |= the_left_argument_of H or M,v |= the_right_argument_of H ) ) )
assume H is disjunctive ; ::_thesis: ( M,v |= H iff ( M,v |= the_left_argument_of H or M,v |= the_right_argument_of H ) )
then H = (the_left_argument_of H) 'or' (the_right_argument_of H) by ZF_LANG:41;
hence ( M,v |= H iff ( M,v |= the_left_argument_of H or M,v |= the_right_argument_of H ) ) by ZF_MODEL:17; ::_thesis: verum
end;
theorem :: ZF_LANG1:90
for H being ZF-formula
for M being non empty set
for v being Function of VAR,M st H is conditional holds
( M,v |= H iff ( M,v |= the_antecedent_of H implies M,v |= the_consequent_of H ) )
proof
let H be ZF-formula; ::_thesis: for M being non empty set
for v being Function of VAR,M st H is conditional holds
( M,v |= H iff ( M,v |= the_antecedent_of H implies M,v |= the_consequent_of H ) )
let M be non empty set ; ::_thesis: for v being Function of VAR,M st H is conditional holds
( M,v |= H iff ( M,v |= the_antecedent_of H implies M,v |= the_consequent_of H ) )
let v be Function of VAR,M; ::_thesis: ( H is conditional implies ( M,v |= H iff ( M,v |= the_antecedent_of H implies M,v |= the_consequent_of H ) ) )
assume H is conditional ; ::_thesis: ( M,v |= H iff ( M,v |= the_antecedent_of H implies M,v |= the_consequent_of H ) )
then H = (the_antecedent_of H) => (the_consequent_of H) by ZF_LANG:47;
hence ( M,v |= H iff ( M,v |= the_antecedent_of H implies M,v |= the_consequent_of H ) ) by ZF_MODEL:18; ::_thesis: verum
end;
theorem :: ZF_LANG1:91
for H being ZF-formula
for M being non empty set
for v being Function of VAR,M st H is biconditional holds
( M,v |= H iff ( M,v |= the_left_side_of H iff M,v |= the_right_side_of H ) )
proof
let H be ZF-formula; ::_thesis: for M being non empty set
for v being Function of VAR,M st H is biconditional holds
( M,v |= H iff ( M,v |= the_left_side_of H iff M,v |= the_right_side_of H ) )
let M be non empty set ; ::_thesis: for v being Function of VAR,M st H is biconditional holds
( M,v |= H iff ( M,v |= the_left_side_of H iff M,v |= the_right_side_of H ) )
let v be Function of VAR,M; ::_thesis: ( H is biconditional implies ( M,v |= H iff ( M,v |= the_left_side_of H iff M,v |= the_right_side_of H ) ) )
assume H is biconditional ; ::_thesis: ( M,v |= H iff ( M,v |= the_left_side_of H iff M,v |= the_right_side_of H ) )
then H = (the_left_side_of H) <=> (the_right_side_of H) by ZF_LANG:49;
hence ( M,v |= H iff ( M,v |= the_left_side_of H iff M,v |= the_right_side_of H ) ) by ZF_MODEL:19; ::_thesis: verum
end;
theorem :: ZF_LANG1:92
for H being ZF-formula
for M being non empty set
for v being Function of VAR,M st H is existential holds
( M,v |= H iff ex m being Element of M st M,v / ((bound_in H),m) |= the_scope_of H )
proof
let H be ZF-formula; ::_thesis: for M being non empty set
for v being Function of VAR,M st H is existential holds
( M,v |= H iff ex m being Element of M st M,v / ((bound_in H),m) |= the_scope_of H )
let M be non empty set ; ::_thesis: for v being Function of VAR,M st H is existential holds
( M,v |= H iff ex m being Element of M st M,v / ((bound_in H),m) |= the_scope_of H )
let v be Function of VAR,M; ::_thesis: ( H is existential implies ( M,v |= H iff ex m being Element of M st M,v / ((bound_in H),m) |= the_scope_of H ) )
assume H is existential ; ::_thesis: ( M,v |= H iff ex m being Element of M st M,v / ((bound_in H),m) |= the_scope_of H )
then H = Ex ((bound_in H),(the_scope_of H)) by ZF_LANG:45;
hence ( M,v |= H iff ex m being Element of M st M,v / ((bound_in H),m) |= the_scope_of H ) by Th73; ::_thesis: verum
end;
theorem :: ZF_LANG1:93
for H being ZF-formula
for x being Variable
for M being non empty set holds
( M |= Ex (x,H) iff for v being Function of VAR,M ex m being Element of M st M,v / (x,m) |= H )
proof
let H be ZF-formula; ::_thesis: for x being Variable
for M being non empty set holds
( M |= Ex (x,H) iff for v being Function of VAR,M ex m being Element of M st M,v / (x,m) |= H )
let x be Variable; ::_thesis: for M being non empty set holds
( M |= Ex (x,H) iff for v being Function of VAR,M ex m being Element of M st M,v / (x,m) |= H )
let M be non empty set ; ::_thesis: ( M |= Ex (x,H) iff for v being Function of VAR,M ex m being Element of M st M,v / (x,m) |= H )
thus ( M |= Ex (x,H) implies for v being Function of VAR,M ex m being Element of M st M,v / (x,m) |= H ) ::_thesis: ( ( for v being Function of VAR,M ex m being Element of M st M,v / (x,m) |= H ) implies M |= Ex (x,H) )
proof
assume A1: for v being Function of VAR,M holds M,v |= Ex (x,H) ; :: according to ZF_MODEL:def_5 ::_thesis: for v being Function of VAR,M ex m being Element of M st M,v / (x,m) |= H
let v be Function of VAR,M; ::_thesis: ex m being Element of M st M,v / (x,m) |= H
M,v |= Ex (x,H) by A1;
hence ex m being Element of M st M,v / (x,m) |= H by Th73; ::_thesis: verum
end;
assume A2: for v being Function of VAR,M ex m being Element of M st M,v / (x,m) |= H ; ::_thesis: M |= Ex (x,H)
let v be Function of VAR,M; :: according to ZF_MODEL:def_5 ::_thesis: M,v |= Ex (x,H)
ex m being Element of M st M,v / (x,m) |= H by A2;
hence M,v |= Ex (x,H) by Th73; ::_thesis: verum
end;
theorem Th94: :: ZF_LANG1:94
for H being ZF-formula
for x being Variable
for M being non empty set st M |= H holds
M |= Ex (x,H)
proof
let H be ZF-formula; ::_thesis: for x being Variable
for M being non empty set st M |= H holds
M |= Ex (x,H)
let x be Variable; ::_thesis: for M being non empty set st M |= H holds
M |= Ex (x,H)
let M be non empty set ; ::_thesis: ( M |= H implies M |= Ex (x,H) )
assume A1: M |= H ; ::_thesis: M |= Ex (x,H)
let v be Function of VAR,M; :: according to ZF_MODEL:def_5 ::_thesis: M,v |= Ex (x,H)
M,v / (x,(v . x)) |= H by A1, ZF_MODEL:def_5;
hence M,v |= Ex (x,H) by Th73; ::_thesis: verum
end;
theorem Th95: :: ZF_LANG1:95
for H being ZF-formula
for x, y being Variable
for M being non empty set holds
( M |= H iff M |= All (x,y,H) )
proof
let H be ZF-formula; ::_thesis: for x, y being Variable
for M being non empty set holds
( M |= H iff M |= All (x,y,H) )
let x, y be Variable; ::_thesis: for M being non empty set holds
( M |= H iff M |= All (x,y,H) )
let M be non empty set ; ::_thesis: ( M |= H iff M |= All (x,y,H) )
( M |= H iff M |= All (y,H) ) by ZF_MODEL:23;
hence ( M |= H iff M |= All (x,y,H) ) by ZF_MODEL:23; ::_thesis: verum
end;
theorem Th96: :: ZF_LANG1:96
for H being ZF-formula
for x, y being Variable
for M being non empty set st M |= H holds
M |= Ex (x,y,H)
proof
let H be ZF-formula; ::_thesis: for x, y being Variable
for M being non empty set st M |= H holds
M |= Ex (x,y,H)
let x, y be Variable; ::_thesis: for M being non empty set st M |= H holds
M |= Ex (x,y,H)
let M be non empty set ; ::_thesis: ( M |= H implies M |= Ex (x,y,H) )
( M |= H implies M |= Ex (y,H) ) by Th94;
hence ( M |= H implies M |= Ex (x,y,H) ) by Th94; ::_thesis: verum
end;
theorem :: ZF_LANG1:97
for H being ZF-formula
for x, y, z being Variable
for M being non empty set holds
( M |= H iff M |= All (x,y,z,H) )
proof
let H be ZF-formula; ::_thesis: for x, y, z being Variable
for M being non empty set holds
( M |= H iff M |= All (x,y,z,H) )
let x, y, z be Variable; ::_thesis: for M being non empty set holds
( M |= H iff M |= All (x,y,z,H) )
let M be non empty set ; ::_thesis: ( M |= H iff M |= All (x,y,z,H) )
( M |= H iff M |= All (y,z,H) ) by Th95;
hence ( M |= H iff M |= All (x,y,z,H) ) by ZF_MODEL:23; ::_thesis: verum
end;
theorem :: ZF_LANG1:98
for H being ZF-formula
for x, y, z being Variable
for M being non empty set st M |= H holds
M |= Ex (x,y,z,H)
proof
let H be ZF-formula; ::_thesis: for x, y, z being Variable
for M being non empty set st M |= H holds
M |= Ex (x,y,z,H)
let x, y, z be Variable; ::_thesis: for M being non empty set st M |= H holds
M |= Ex (x,y,z,H)
let M be non empty set ; ::_thesis: ( M |= H implies M |= Ex (x,y,z,H) )
( M |= H implies M |= Ex (y,z,H) ) by Th96;
hence ( M |= H implies M |= Ex (x,y,z,H) ) by Th94; ::_thesis: verum
end;
theorem :: ZF_LANG1:99
for p, q being ZF-formula
for M being non empty set
for v being Function of VAR,M holds
( M,v |= (p <=> q) => (p => q) & M |= (p <=> q) => (p => q) )
proof
let p, q be ZF-formula; ::_thesis: for M being non empty set
for v being Function of VAR,M holds
( M,v |= (p <=> q) => (p => q) & M |= (p <=> q) => (p => q) )
let M be non empty set ; ::_thesis: for v being Function of VAR,M holds
( M,v |= (p <=> q) => (p => q) & M |= (p <=> q) => (p => q) )
let v be Function of VAR,M; ::_thesis: ( M,v |= (p <=> q) => (p => q) & M |= (p <=> q) => (p => q) )
A1: now__::_thesis:_for_v_being_Function_of_VAR,M_holds_M,v_|=_(p_<=>_q)_=>_(p_=>_q)
let v be Function of VAR,M; ::_thesis: M,v |= (p <=> q) => (p => q)
( M,v |= p <=> q implies M,v |= p => q ) by ZF_MODEL:15;
hence M,v |= (p <=> q) => (p => q) by ZF_MODEL:18; ::_thesis: verum
end;
hence M,v |= (p <=> q) => (p => q) ; ::_thesis: M |= (p <=> q) => (p => q)
let v be Function of VAR,M; :: according to ZF_MODEL:def_5 ::_thesis: M,v |= (p <=> q) => (p => q)
thus M,v |= (p <=> q) => (p => q) by A1; ::_thesis: verum
end;
theorem :: ZF_LANG1:100
for p, q being ZF-formula
for M being non empty set
for v being Function of VAR,M holds
( M,v |= (p <=> q) => (q => p) & M |= (p <=> q) => (q => p) )
proof
let p, q be ZF-formula; ::_thesis: for M being non empty set
for v being Function of VAR,M holds
( M,v |= (p <=> q) => (q => p) & M |= (p <=> q) => (q => p) )
let M be non empty set ; ::_thesis: for v being Function of VAR,M holds
( M,v |= (p <=> q) => (q => p) & M |= (p <=> q) => (q => p) )
let v be Function of VAR,M; ::_thesis: ( M,v |= (p <=> q) => (q => p) & M |= (p <=> q) => (q => p) )
A1: now__::_thesis:_for_v_being_Function_of_VAR,M_holds_M,v_|=_(p_<=>_q)_=>_(q_=>_p)
let v be Function of VAR,M; ::_thesis: M,v |= (p <=> q) => (q => p)
( M,v |= p <=> q implies M,v |= q => p ) by ZF_MODEL:15;
hence M,v |= (p <=> q) => (q => p) by ZF_MODEL:18; ::_thesis: verum
end;
hence M,v |= (p <=> q) => (q => p) ; ::_thesis: M |= (p <=> q) => (q => p)
let v be Function of VAR,M; :: according to ZF_MODEL:def_5 ::_thesis: M,v |= (p <=> q) => (q => p)
thus M,v |= (p <=> q) => (q => p) by A1; ::_thesis: verum
end;
theorem Th101: :: ZF_LANG1:101
for p, q, r being ZF-formula
for M being non empty set holds M |= (p => q) => ((q => r) => (p => r))
proof
let p, q, r be ZF-formula; ::_thesis: for M being non empty set holds M |= (p => q) => ((q => r) => (p => r))
let M be non empty set ; ::_thesis: M |= (p => q) => ((q => r) => (p => r))
let v be Function of VAR,M; :: according to ZF_MODEL:def_5 ::_thesis: M,v |= (p => q) => ((q => r) => (p => r))
now__::_thesis:_(_M,v_|=_p_=>_q_implies_M,v_|=_(q_=>_r)_=>_(p_=>_r)_)
assume A1: M,v |= p => q ; ::_thesis: M,v |= (q => r) => (p => r)
now__::_thesis:_(_M,v_|=_q_=>_r_implies_M,v_|=_p_=>_r_)
assume A2: M,v |= q => r ; ::_thesis: M,v |= p => r
now__::_thesis:_(_M,v_|=_p_implies_M,v_|=_r_)
assume M,v |= p ; ::_thesis: M,v |= r
then M,v |= q by A1, ZF_MODEL:18;
hence M,v |= r by A2, ZF_MODEL:18; ::_thesis: verum
end;
hence M,v |= p => r by ZF_MODEL:18; ::_thesis: verum
end;
hence M,v |= (q => r) => (p => r) by ZF_MODEL:18; ::_thesis: verum
end;
hence M,v |= (p => q) => ((q => r) => (p => r)) by ZF_MODEL:18; ::_thesis: verum
end;
theorem Th102: :: ZF_LANG1:102
for p, q, r being ZF-formula
for M being non empty set
for v being Function of VAR,M st M,v |= p => q & M,v |= q => r holds
M,v |= p => r
proof
let p, q, r be ZF-formula; ::_thesis: for M being non empty set
for v being Function of VAR,M st M,v |= p => q & M,v |= q => r holds
M,v |= p => r
let M be non empty set ; ::_thesis: for v being Function of VAR,M st M,v |= p => q & M,v |= q => r holds
M,v |= p => r
let v be Function of VAR,M; ::_thesis: ( M,v |= p => q & M,v |= q => r implies M,v |= p => r )
assume that
A1: M,v |= p => q and
A2: M,v |= q => r ; ::_thesis: M,v |= p => r
M |= (p => q) => ((q => r) => (p => r)) by Th101;
then M,v |= (p => q) => ((q => r) => (p => r)) by ZF_MODEL:def_5;
then M,v |= (q => r) => (p => r) by A1, ZF_MODEL:18;
hence M,v |= p => r by A2, ZF_MODEL:18; ::_thesis: verum
end;
theorem :: ZF_LANG1:103
for p, q, r being ZF-formula
for M being non empty set st M |= p => q & M |= q => r holds
M |= p => r
proof
let p, q, r be ZF-formula; ::_thesis: for M being non empty set st M |= p => q & M |= q => r holds
M |= p => r
let M be non empty set ; ::_thesis: ( M |= p => q & M |= q => r implies M |= p => r )
assume A1: ( M |= p => q & M |= q => r ) ; ::_thesis: M |= p => r
let v be Function of VAR,M; :: according to ZF_MODEL:def_5 ::_thesis: M,v |= p => r
( M,v |= p => q & M,v |= q => r ) by A1, ZF_MODEL:def_5;
hence M,v |= p => r by Th102; ::_thesis: verum
end;
theorem :: ZF_LANG1:104
for p, q, r being ZF-formula
for M being non empty set
for v being Function of VAR,M holds
( M,v |= ((p => q) '&' (q => r)) => (p => r) & M |= ((p => q) '&' (q => r)) => (p => r) )
proof
let p, q, r be ZF-formula; ::_thesis: for M being non empty set
for v being Function of VAR,M holds
( M,v |= ((p => q) '&' (q => r)) => (p => r) & M |= ((p => q) '&' (q => r)) => (p => r) )
let M be non empty set ; ::_thesis: for v being Function of VAR,M holds
( M,v |= ((p => q) '&' (q => r)) => (p => r) & M |= ((p => q) '&' (q => r)) => (p => r) )
let v be Function of VAR,M; ::_thesis: ( M,v |= ((p => q) '&' (q => r)) => (p => r) & M |= ((p => q) '&' (q => r)) => (p => r) )
now__::_thesis:_for_v_being_Function_of_VAR,M_holds_M,v_|=_((p_=>_q)_'&'_(q_=>_r))_=>_(p_=>_r)
let v be Function of VAR,M; ::_thesis: M,v |= ((p => q) '&' (q => r)) => (p => r)
now__::_thesis:_(_M,v_|=_(p_=>_q)_'&'_(q_=>_r)_implies_M,v_|=_p_=>_r_)
assume M,v |= (p => q) '&' (q => r) ; ::_thesis: M,v |= p => r
then ( M,v |= p => q & M,v |= q => r ) by ZF_MODEL:15;
hence M,v |= p => r by Th102; ::_thesis: verum
end;
hence M,v |= ((p => q) '&' (q => r)) => (p => r) by ZF_MODEL:18; ::_thesis: verum
end;
hence ( M,v |= ((p => q) '&' (q => r)) => (p => r) & M |= ((p => q) '&' (q => r)) => (p => r) ) by ZF_MODEL:def_5; ::_thesis: verum
end;
theorem :: ZF_LANG1:105
for p, q being ZF-formula
for M being non empty set
for v being Function of VAR,M holds
( M,v |= p => (q => p) & M |= p => (q => p) )
proof
let p, q be ZF-formula; ::_thesis: for M being non empty set
for v being Function of VAR,M holds
( M,v |= p => (q => p) & M |= p => (q => p) )
let M be non empty set ; ::_thesis: for v being Function of VAR,M holds
( M,v |= p => (q => p) & M |= p => (q => p) )
let v be Function of VAR,M; ::_thesis: ( M,v |= p => (q => p) & M |= p => (q => p) )
now__::_thesis:_for_v_being_Function_of_VAR,M_holds_M,v_|=_p_=>_(q_=>_p)
let v be Function of VAR,M; ::_thesis: M,v |= p => (q => p)
( M,v |= p implies M,v |= q => p ) by ZF_MODEL:18;
hence M,v |= p => (q => p) by ZF_MODEL:18; ::_thesis: verum
end;
hence ( M,v |= p => (q => p) & M |= p => (q => p) ) by ZF_MODEL:def_5; ::_thesis: verum
end;
theorem :: ZF_LANG1:106
for p, q, r being ZF-formula
for M being non empty set
for v being Function of VAR,M holds
( M,v |= (p => (q => r)) => ((p => q) => (p => r)) & M |= (p => (q => r)) => ((p => q) => (p => r)) )
proof
let p, q, r be ZF-formula; ::_thesis: for M being non empty set
for v being Function of VAR,M holds
( M,v |= (p => (q => r)) => ((p => q) => (p => r)) & M |= (p => (q => r)) => ((p => q) => (p => r)) )
let M be non empty set ; ::_thesis: for v being Function of VAR,M holds
( M,v |= (p => (q => r)) => ((p => q) => (p => r)) & M |= (p => (q => r)) => ((p => q) => (p => r)) )
let v be Function of VAR,M; ::_thesis: ( M,v |= (p => (q => r)) => ((p => q) => (p => r)) & M |= (p => (q => r)) => ((p => q) => (p => r)) )
now__::_thesis:_for_v_being_Function_of_VAR,M_holds_M,v_|=_(p_=>_(q_=>_r))_=>_((p_=>_q)_=>_(p_=>_r))
let v be Function of VAR,M; ::_thesis: M,v |= (p => (q => r)) => ((p => q) => (p => r))
now__::_thesis:_(_M,v_|=_p_=>_(q_=>_r)_implies_M,v_|=_(p_=>_q)_=>_(p_=>_r)_)
assume A1: M,v |= p => (q => r) ; ::_thesis: M,v |= (p => q) => (p => r)
now__::_thesis:_(_M,v_|=_p_=>_q_implies_M,v_|=_p_=>_r_)
assume M,v |= p => q ; ::_thesis: M,v |= p => r
then A2: ( M,v |= p implies ( M,v |= q => r & M,v |= q ) ) by A1, ZF_MODEL:18;
( M,v |= q & M,v |= q => r implies M,v |= r ) by ZF_MODEL:18;
hence M,v |= p => r by A2, ZF_MODEL:18; ::_thesis: verum
end;
hence M,v |= (p => q) => (p => r) by ZF_MODEL:18; ::_thesis: verum
end;
hence M,v |= (p => (q => r)) => ((p => q) => (p => r)) by ZF_MODEL:18; ::_thesis: verum
end;
hence ( M,v |= (p => (q => r)) => ((p => q) => (p => r)) & M |= (p => (q => r)) => ((p => q) => (p => r)) ) by ZF_MODEL:def_5; ::_thesis: verum
end;
theorem :: ZF_LANG1:107
for p, q being ZF-formula
for M being non empty set
for v being Function of VAR,M holds
( M,v |= (p '&' q) => p & M |= (p '&' q) => p )
proof
let p, q be ZF-formula; ::_thesis: for M being non empty set
for v being Function of VAR,M holds
( M,v |= (p '&' q) => p & M |= (p '&' q) => p )
let M be non empty set ; ::_thesis: for v being Function of VAR,M holds
( M,v |= (p '&' q) => p & M |= (p '&' q) => p )
let v be Function of VAR,M; ::_thesis: ( M,v |= (p '&' q) => p & M |= (p '&' q) => p )
now__::_thesis:_for_v_being_Function_of_VAR,M_holds_M,v_|=_(p_'&'_q)_=>_p
let v be Function of VAR,M; ::_thesis: M,v |= (p '&' q) => p
( M,v |= p '&' q implies M,v |= p ) by ZF_MODEL:15;
hence M,v |= (p '&' q) => p by ZF_MODEL:18; ::_thesis: verum
end;
hence ( M,v |= (p '&' q) => p & M |= (p '&' q) => p ) by ZF_MODEL:def_5; ::_thesis: verum
end;
theorem :: ZF_LANG1:108
for p, q being ZF-formula
for M being non empty set
for v being Function of VAR,M holds
( M,v |= (p '&' q) => q & M |= (p '&' q) => q )
proof
let p, q be ZF-formula; ::_thesis: for M being non empty set
for v being Function of VAR,M holds
( M,v |= (p '&' q) => q & M |= (p '&' q) => q )
let M be non empty set ; ::_thesis: for v being Function of VAR,M holds
( M,v |= (p '&' q) => q & M |= (p '&' q) => q )
let v be Function of VAR,M; ::_thesis: ( M,v |= (p '&' q) => q & M |= (p '&' q) => q )
now__::_thesis:_for_v_being_Function_of_VAR,M_holds_M,v_|=_(p_'&'_q)_=>_q
let v be Function of VAR,M; ::_thesis: M,v |= (p '&' q) => q
( M,v |= p '&' q implies M,v |= q ) by ZF_MODEL:15;
hence M,v |= (p '&' q) => q by ZF_MODEL:18; ::_thesis: verum
end;
hence ( M,v |= (p '&' q) => q & M |= (p '&' q) => q ) by ZF_MODEL:def_5; ::_thesis: verum
end;
theorem :: ZF_LANG1:109
for p, q being ZF-formula
for M being non empty set
for v being Function of VAR,M holds
( M,v |= (p '&' q) => (q '&' p) & M |= (p '&' q) => (q '&' p) )
proof
let p, q be ZF-formula; ::_thesis: for M being non empty set
for v being Function of VAR,M holds
( M,v |= (p '&' q) => (q '&' p) & M |= (p '&' q) => (q '&' p) )
let M be non empty set ; ::_thesis: for v being Function of VAR,M holds
( M,v |= (p '&' q) => (q '&' p) & M |= (p '&' q) => (q '&' p) )
let v be Function of VAR,M; ::_thesis: ( M,v |= (p '&' q) => (q '&' p) & M |= (p '&' q) => (q '&' p) )
now__::_thesis:_for_v_being_Function_of_VAR,M_holds_M,v_|=_(p_'&'_q)_=>_(q_'&'_p)
let v be Function of VAR,M; ::_thesis: M,v |= (p '&' q) => (q '&' p)
A1: ( M,v |= p & M,v |= q implies M,v |= q '&' p ) by ZF_MODEL:15;
( M,v |= p '&' q implies ( M,v |= p & M,v |= q ) ) by ZF_MODEL:15;
hence M,v |= (p '&' q) => (q '&' p) by A1, ZF_MODEL:18; ::_thesis: verum
end;
hence ( M,v |= (p '&' q) => (q '&' p) & M |= (p '&' q) => (q '&' p) ) by ZF_MODEL:def_5; ::_thesis: verum
end;
theorem :: ZF_LANG1:110
for p being ZF-formula
for M being non empty set
for v being Function of VAR,M holds
( M,v |= p => (p '&' p) & M |= p => (p '&' p) )
proof
let p be ZF-formula; ::_thesis: for M being non empty set
for v being Function of VAR,M holds
( M,v |= p => (p '&' p) & M |= p => (p '&' p) )
let M be non empty set ; ::_thesis: for v being Function of VAR,M holds
( M,v |= p => (p '&' p) & M |= p => (p '&' p) )
let v be Function of VAR,M; ::_thesis: ( M,v |= p => (p '&' p) & M |= p => (p '&' p) )
now__::_thesis:_for_v_being_Function_of_VAR,M_holds_M,v_|=_p_=>_(p_'&'_p)
let v be Function of VAR,M; ::_thesis: M,v |= p => (p '&' p)
( M,v |= p implies M,v |= p '&' p ) by ZF_MODEL:15;
hence M,v |= p => (p '&' p) by ZF_MODEL:18; ::_thesis: verum
end;
hence ( M,v |= p => (p '&' p) & M |= p => (p '&' p) ) by ZF_MODEL:def_5; ::_thesis: verum
end;
theorem :: ZF_LANG1:111
for p, q, r being ZF-formula
for M being non empty set
for v being Function of VAR,M holds
( M,v |= (p => q) => ((p => r) => (p => (q '&' r))) & M |= (p => q) => ((p => r) => (p => (q '&' r))) )
proof
let p, q, r be ZF-formula; ::_thesis: for M being non empty set
for v being Function of VAR,M holds
( M,v |= (p => q) => ((p => r) => (p => (q '&' r))) & M |= (p => q) => ((p => r) => (p => (q '&' r))) )
let M be non empty set ; ::_thesis: for v being Function of VAR,M holds
( M,v |= (p => q) => ((p => r) => (p => (q '&' r))) & M |= (p => q) => ((p => r) => (p => (q '&' r))) )
let v be Function of VAR,M; ::_thesis: ( M,v |= (p => q) => ((p => r) => (p => (q '&' r))) & M |= (p => q) => ((p => r) => (p => (q '&' r))) )
now__::_thesis:_for_v_being_Function_of_VAR,M_holds_M,v_|=_(p_=>_q)_=>_((p_=>_r)_=>_(p_=>_(q_'&'_r)))
let v be Function of VAR,M; ::_thesis: M,v |= (p => q) => ((p => r) => (p => (q '&' r)))
now__::_thesis:_(_M,v_|=_p_=>_q_implies_M,v_|=_(p_=>_r)_=>_(p_=>_(q_'&'_r))_)
assume A1: M,v |= p => q ; ::_thesis: M,v |= (p => r) => (p => (q '&' r))
now__::_thesis:_(_M,v_|=_p_=>_r_implies_M,v_|=_p_=>_(q_'&'_r)_)
assume M,v |= p => r ; ::_thesis: M,v |= p => (q '&' r)
then ( M,v |= p implies ( M,v |= r & M,v |= q ) ) by A1, ZF_MODEL:18;
then ( M,v |= p implies M,v |= q '&' r ) by ZF_MODEL:15;
hence M,v |= p => (q '&' r) by ZF_MODEL:18; ::_thesis: verum
end;
hence M,v |= (p => r) => (p => (q '&' r)) by ZF_MODEL:18; ::_thesis: verum
end;
hence M,v |= (p => q) => ((p => r) => (p => (q '&' r))) by ZF_MODEL:18; ::_thesis: verum
end;
hence ( M,v |= (p => q) => ((p => r) => (p => (q '&' r))) & M |= (p => q) => ((p => r) => (p => (q '&' r))) ) by ZF_MODEL:def_5; ::_thesis: verum
end;
theorem Th112: :: ZF_LANG1:112
for p, q being ZF-formula
for M being non empty set
for v being Function of VAR,M holds
( M,v |= p => (p 'or' q) & M |= p => (p 'or' q) )
proof
let p, q be ZF-formula; ::_thesis: for M being non empty set
for v being Function of VAR,M holds
( M,v |= p => (p 'or' q) & M |= p => (p 'or' q) )
let M be non empty set ; ::_thesis: for v being Function of VAR,M holds
( M,v |= p => (p 'or' q) & M |= p => (p 'or' q) )
let v be Function of VAR,M; ::_thesis: ( M,v |= p => (p 'or' q) & M |= p => (p 'or' q) )
now__::_thesis:_for_v_being_Function_of_VAR,M_holds_M,v_|=_p_=>_(p_'or'_q)
let v be Function of VAR,M; ::_thesis: M,v |= p => (p 'or' q)
( M,v |= p implies M,v |= p 'or' q ) by ZF_MODEL:17;
hence M,v |= p => (p 'or' q) by ZF_MODEL:18; ::_thesis: verum
end;
hence ( M,v |= p => (p 'or' q) & M |= p => (p 'or' q) ) by ZF_MODEL:def_5; ::_thesis: verum
end;
theorem :: ZF_LANG1:113
for q, p being ZF-formula
for M being non empty set
for v being Function of VAR,M holds
( M,v |= q => (p 'or' q) & M |= q => (p 'or' q) )
proof
let q, p be ZF-formula; ::_thesis: for M being non empty set
for v being Function of VAR,M holds
( M,v |= q => (p 'or' q) & M |= q => (p 'or' q) )
let M be non empty set ; ::_thesis: for v being Function of VAR,M holds
( M,v |= q => (p 'or' q) & M |= q => (p 'or' q) )
let v be Function of VAR,M; ::_thesis: ( M,v |= q => (p 'or' q) & M |= q => (p 'or' q) )
now__::_thesis:_for_v_being_Function_of_VAR,M_holds_M,v_|=_q_=>_(p_'or'_q)
let v be Function of VAR,M; ::_thesis: M,v |= q => (p 'or' q)
( M,v |= q implies M,v |= p 'or' q ) by ZF_MODEL:17;
hence M,v |= q => (p 'or' q) by ZF_MODEL:18; ::_thesis: verum
end;
hence ( M,v |= q => (p 'or' q) & M |= q => (p 'or' q) ) by ZF_MODEL:def_5; ::_thesis: verum
end;
theorem :: ZF_LANG1:114
for p, q being ZF-formula
for M being non empty set
for v being Function of VAR,M holds
( M,v |= (p 'or' q) => (q 'or' p) & M |= (p 'or' q) => (q 'or' p) )
proof
let p, q be ZF-formula; ::_thesis: for M being non empty set
for v being Function of VAR,M holds
( M,v |= (p 'or' q) => (q 'or' p) & M |= (p 'or' q) => (q 'or' p) )
let M be non empty set ; ::_thesis: for v being Function of VAR,M holds
( M,v |= (p 'or' q) => (q 'or' p) & M |= (p 'or' q) => (q 'or' p) )
let v be Function of VAR,M; ::_thesis: ( M,v |= (p 'or' q) => (q 'or' p) & M |= (p 'or' q) => (q 'or' p) )
now__::_thesis:_for_v_being_Function_of_VAR,M_holds_M,v_|=_(p_'or'_q)_=>_(q_'or'_p)
let v be Function of VAR,M; ::_thesis: M,v |= (p 'or' q) => (q 'or' p)
A1: ( ( M,v |= p or M,v |= q ) implies M,v |= q 'or' p ) by ZF_MODEL:17;
( not M,v |= p 'or' q or M,v |= p or M,v |= q ) by ZF_MODEL:17;
hence M,v |= (p 'or' q) => (q 'or' p) by A1, ZF_MODEL:18; ::_thesis: verum
end;
hence ( M,v |= (p 'or' q) => (q 'or' p) & M |= (p 'or' q) => (q 'or' p) ) by ZF_MODEL:def_5; ::_thesis: verum
end;
theorem :: ZF_LANG1:115
for p being ZF-formula
for M being non empty set
for v being Function of VAR,M holds
( M,v |= p => (p 'or' p) & M |= p => (p 'or' p) ) by Th112;
theorem :: ZF_LANG1:116
for p, r, q being ZF-formula
for M being non empty set
for v being Function of VAR,M holds
( M,v |= (p => r) => ((q => r) => ((p 'or' q) => r)) & M |= (p => r) => ((q => r) => ((p 'or' q) => r)) )
proof
let p, r, q be ZF-formula; ::_thesis: for M being non empty set
for v being Function of VAR,M holds
( M,v |= (p => r) => ((q => r) => ((p 'or' q) => r)) & M |= (p => r) => ((q => r) => ((p 'or' q) => r)) )
let M be non empty set ; ::_thesis: for v being Function of VAR,M holds
( M,v |= (p => r) => ((q => r) => ((p 'or' q) => r)) & M |= (p => r) => ((q => r) => ((p 'or' q) => r)) )
let v be Function of VAR,M; ::_thesis: ( M,v |= (p => r) => ((q => r) => ((p 'or' q) => r)) & M |= (p => r) => ((q => r) => ((p 'or' q) => r)) )
now__::_thesis:_for_v_being_Function_of_VAR,M_holds_M,v_|=_(p_=>_r)_=>_((q_=>_r)_=>_((p_'or'_q)_=>_r))
let v be Function of VAR,M; ::_thesis: M,v |= (p => r) => ((q => r) => ((p 'or' q) => r))
now__::_thesis:_(_M,v_|=_p_=>_r_implies_M,v_|=_(q_=>_r)_=>_((p_'or'_q)_=>_r)_)
assume A1: M,v |= p => r ; ::_thesis: M,v |= (q => r) => ((p 'or' q) => r)
now__::_thesis:_(_M,v_|=_q_=>_r_implies_M,v_|=_(p_'or'_q)_=>_r_)
assume M,v |= q => r ; ::_thesis: M,v |= (p 'or' q) => r
then ( ( M,v |= p or M,v |= q ) implies M,v |= r ) by A1, ZF_MODEL:18;
then ( M,v |= p 'or' q implies M,v |= r ) by ZF_MODEL:17;
hence M,v |= (p 'or' q) => r by ZF_MODEL:18; ::_thesis: verum
end;
hence M,v |= (q => r) => ((p 'or' q) => r) by ZF_MODEL:18; ::_thesis: verum
end;
hence M,v |= (p => r) => ((q => r) => ((p 'or' q) => r)) by ZF_MODEL:18; ::_thesis: verum
end;
hence ( M,v |= (p => r) => ((q => r) => ((p 'or' q) => r)) & M |= (p => r) => ((q => r) => ((p 'or' q) => r)) ) by ZF_MODEL:def_5; ::_thesis: verum
end;
theorem :: ZF_LANG1:117
for p, r, q being ZF-formula
for M being non empty set
for v being Function of VAR,M holds
( M,v |= ((p => r) '&' (q => r)) => ((p 'or' q) => r) & M |= ((p => r) '&' (q => r)) => ((p 'or' q) => r) )
proof
let p, r, q be ZF-formula; ::_thesis: for M being non empty set
for v being Function of VAR,M holds
( M,v |= ((p => r) '&' (q => r)) => ((p 'or' q) => r) & M |= ((p => r) '&' (q => r)) => ((p 'or' q) => r) )
let M be non empty set ; ::_thesis: for v being Function of VAR,M holds
( M,v |= ((p => r) '&' (q => r)) => ((p 'or' q) => r) & M |= ((p => r) '&' (q => r)) => ((p 'or' q) => r) )
let v be Function of VAR,M; ::_thesis: ( M,v |= ((p => r) '&' (q => r)) => ((p 'or' q) => r) & M |= ((p => r) '&' (q => r)) => ((p 'or' q) => r) )
now__::_thesis:_for_v_being_Function_of_VAR,M_holds_M,v_|=_((p_=>_r)_'&'_(q_=>_r))_=>_((p_'or'_q)_=>_r)
let v be Function of VAR,M; ::_thesis: M,v |= ((p => r) '&' (q => r)) => ((p 'or' q) => r)
now__::_thesis:_(_M,v_|=_(p_=>_r)_'&'_(q_=>_r)_implies_M,v_|=_(p_'or'_q)_=>_r_)
assume M,v |= (p => r) '&' (q => r) ; ::_thesis: M,v |= (p 'or' q) => r
then ( M,v |= p => r & M,v |= q => r ) by ZF_MODEL:15;
then ( ( M,v |= p or M,v |= q ) implies M,v |= r ) by ZF_MODEL:18;
then ( M,v |= p 'or' q implies M,v |= r ) by ZF_MODEL:17;
hence M,v |= (p 'or' q) => r by ZF_MODEL:18; ::_thesis: verum
end;
hence M,v |= ((p => r) '&' (q => r)) => ((p 'or' q) => r) by ZF_MODEL:18; ::_thesis: verum
end;
hence ( M,v |= ((p => r) '&' (q => r)) => ((p 'or' q) => r) & M |= ((p => r) '&' (q => r)) => ((p 'or' q) => r) ) by ZF_MODEL:def_5; ::_thesis: verum
end;
theorem :: ZF_LANG1:118
for p, q being ZF-formula
for M being non empty set
for v being Function of VAR,M holds
( M,v |= (p => ('not' q)) => (q => ('not' p)) & M |= (p => ('not' q)) => (q => ('not' p)) )
proof
let p, q be ZF-formula; ::_thesis: for M being non empty set
for v being Function of VAR,M holds
( M,v |= (p => ('not' q)) => (q => ('not' p)) & M |= (p => ('not' q)) => (q => ('not' p)) )
let M be non empty set ; ::_thesis: for v being Function of VAR,M holds
( M,v |= (p => ('not' q)) => (q => ('not' p)) & M |= (p => ('not' q)) => (q => ('not' p)) )
let v be Function of VAR,M; ::_thesis: ( M,v |= (p => ('not' q)) => (q => ('not' p)) & M |= (p => ('not' q)) => (q => ('not' p)) )
now__::_thesis:_for_v_being_Function_of_VAR,M_holds_M,v_|=_(p_=>_('not'_q))_=>_(q_=>_('not'_p))
let v be Function of VAR,M; ::_thesis: M,v |= (p => ('not' q)) => (q => ('not' p))
now__::_thesis:_(_M,v_|=_p_=>_('not'_q)_implies_M,v_|=_q_=>_('not'_p)_)
assume M,v |= p => ('not' q) ; ::_thesis: M,v |= q => ('not' p)
then ( M,v |= p implies M,v |= 'not' q ) by ZF_MODEL:18;
then ( M,v |= q implies M,v |= 'not' p ) by ZF_MODEL:14;
hence M,v |= q => ('not' p) by ZF_MODEL:18; ::_thesis: verum
end;
hence M,v |= (p => ('not' q)) => (q => ('not' p)) by ZF_MODEL:18; ::_thesis: verum
end;
hence ( M,v |= (p => ('not' q)) => (q => ('not' p)) & M |= (p => ('not' q)) => (q => ('not' p)) ) by ZF_MODEL:def_5; ::_thesis: verum
end;
theorem :: ZF_LANG1:119
for p, q being ZF-formula
for M being non empty set
for v being Function of VAR,M holds
( M,v |= ('not' p) => (p => q) & M |= ('not' p) => (p => q) )
proof
let p, q be ZF-formula; ::_thesis: for M being non empty set
for v being Function of VAR,M holds
( M,v |= ('not' p) => (p => q) & M |= ('not' p) => (p => q) )
let M be non empty set ; ::_thesis: for v being Function of VAR,M holds
( M,v |= ('not' p) => (p => q) & M |= ('not' p) => (p => q) )
let v be Function of VAR,M; ::_thesis: ( M,v |= ('not' p) => (p => q) & M |= ('not' p) => (p => q) )
now__::_thesis:_for_v_being_Function_of_VAR,M_holds_M,v_|=_('not'_p)_=>_(p_=>_q)
let v be Function of VAR,M; ::_thesis: M,v |= ('not' p) => (p => q)
now__::_thesis:_(_M,v_|=_'not'_p_implies_M,v_|=_p_=>_q_)
assume M,v |= 'not' p ; ::_thesis: M,v |= p => q
then not M,v |= p by ZF_MODEL:14;
hence M,v |= p => q by ZF_MODEL:18; ::_thesis: verum
end;
hence M,v |= ('not' p) => (p => q) by ZF_MODEL:18; ::_thesis: verum
end;
hence ( M,v |= ('not' p) => (p => q) & M |= ('not' p) => (p => q) ) by ZF_MODEL:def_5; ::_thesis: verum
end;
theorem :: ZF_LANG1:120
for p, q being ZF-formula
for M being non empty set
for v being Function of VAR,M holds
( M,v |= ((p => q) '&' (p => ('not' q))) => ('not' p) & M |= ((p => q) '&' (p => ('not' q))) => ('not' p) )
proof
let p, q be ZF-formula; ::_thesis: for M being non empty set
for v being Function of VAR,M holds
( M,v |= ((p => q) '&' (p => ('not' q))) => ('not' p) & M |= ((p => q) '&' (p => ('not' q))) => ('not' p) )
let M be non empty set ; ::_thesis: for v being Function of VAR,M holds
( M,v |= ((p => q) '&' (p => ('not' q))) => ('not' p) & M |= ((p => q) '&' (p => ('not' q))) => ('not' p) )
let v be Function of VAR,M; ::_thesis: ( M,v |= ((p => q) '&' (p => ('not' q))) => ('not' p) & M |= ((p => q) '&' (p => ('not' q))) => ('not' p) )
now__::_thesis:_for_v_being_Function_of_VAR,M_holds_M,v_|=_((p_=>_q)_'&'_(p_=>_('not'_q)))_=>_('not'_p)
let v be Function of VAR,M; ::_thesis: M,v |= ((p => q) '&' (p => ('not' q))) => ('not' p)
now__::_thesis:_(_M,v_|=_(p_=>_q)_'&'_(p_=>_('not'_q))_implies_M,v_|=_'not'_p_)
assume M,v |= (p => q) '&' (p => ('not' q)) ; ::_thesis: M,v |= 'not' p
then ( M,v |= p => q & M,v |= p => ('not' q) ) by ZF_MODEL:15;
then ( M,v |= p implies ( M,v |= q & M,v |= 'not' q ) ) by ZF_MODEL:18;
hence M,v |= 'not' p by ZF_MODEL:14; ::_thesis: verum
end;
hence M,v |= ((p => q) '&' (p => ('not' q))) => ('not' p) by ZF_MODEL:18; ::_thesis: verum
end;
hence ( M,v |= ((p => q) '&' (p => ('not' q))) => ('not' p) & M |= ((p => q) '&' (p => ('not' q))) => ('not' p) ) by ZF_MODEL:def_5; ::_thesis: verum
end;
theorem :: ZF_LANG1:121
for p, q being ZF-formula
for M being non empty set st M |= p => q & M |= p holds
M |= q
proof
let p, q be ZF-formula; ::_thesis: for M being non empty set st M |= p => q & M |= p holds
M |= q
let M be non empty set ; ::_thesis: ( M |= p => q & M |= p implies M |= q )
assume A1: ( M |= p => q & M |= p ) ; ::_thesis: M |= q
let v be Function of VAR,M; :: according to ZF_MODEL:def_5 ::_thesis: M,v |= q
( M,v |= p => q & M,v |= p ) by A1, ZF_MODEL:def_5;
hence M,v |= q by ZF_MODEL:18; ::_thesis: verum
end;
theorem :: ZF_LANG1:122
for p, q being ZF-formula
for M being non empty set
for v being Function of VAR,M holds
( M,v |= ('not' (p '&' q)) => (('not' p) 'or' ('not' q)) & M |= ('not' (p '&' q)) => (('not' p) 'or' ('not' q)) )
proof
let p, q be ZF-formula; ::_thesis: for M being non empty set
for v being Function of VAR,M holds
( M,v |= ('not' (p '&' q)) => (('not' p) 'or' ('not' q)) & M |= ('not' (p '&' q)) => (('not' p) 'or' ('not' q)) )
let M be non empty set ; ::_thesis: for v being Function of VAR,M holds
( M,v |= ('not' (p '&' q)) => (('not' p) 'or' ('not' q)) & M |= ('not' (p '&' q)) => (('not' p) 'or' ('not' q)) )
let v be Function of VAR,M; ::_thesis: ( M,v |= ('not' (p '&' q)) => (('not' p) 'or' ('not' q)) & M |= ('not' (p '&' q)) => (('not' p) 'or' ('not' q)) )
now__::_thesis:_for_v_being_Function_of_VAR,M_holds_M,v_|=_('not'_(p_'&'_q))_=>_(('not'_p)_'or'_('not'_q))
let v be Function of VAR,M; ::_thesis: M,v |= ('not' (p '&' q)) => (('not' p) 'or' ('not' q))
now__::_thesis:_(_M,v_|=_'not'_(p_'&'_q)_implies_M,v_|=_('not'_p)_'or'_('not'_q)_)
assume M,v |= 'not' (p '&' q) ; ::_thesis: M,v |= ('not' p) 'or' ('not' q)
then not M,v |= p '&' q by ZF_MODEL:14;
then ( not M,v |= p or not M,v |= q ) by ZF_MODEL:15;
then ( M,v |= 'not' p or M,v |= 'not' q ) by ZF_MODEL:14;
hence M,v |= ('not' p) 'or' ('not' q) by ZF_MODEL:17; ::_thesis: verum
end;
hence M,v |= ('not' (p '&' q)) => (('not' p) 'or' ('not' q)) by ZF_MODEL:18; ::_thesis: verum
end;
hence ( M,v |= ('not' (p '&' q)) => (('not' p) 'or' ('not' q)) & M |= ('not' (p '&' q)) => (('not' p) 'or' ('not' q)) ) by ZF_MODEL:def_5; ::_thesis: verum
end;
theorem :: ZF_LANG1:123
for p, q being ZF-formula
for M being non empty set
for v being Function of VAR,M holds
( M,v |= (('not' p) 'or' ('not' q)) => ('not' (p '&' q)) & M |= (('not' p) 'or' ('not' q)) => ('not' (p '&' q)) )
proof
let p, q be ZF-formula; ::_thesis: for M being non empty set
for v being Function of VAR,M holds
( M,v |= (('not' p) 'or' ('not' q)) => ('not' (p '&' q)) & M |= (('not' p) 'or' ('not' q)) => ('not' (p '&' q)) )
let M be non empty set ; ::_thesis: for v being Function of VAR,M holds
( M,v |= (('not' p) 'or' ('not' q)) => ('not' (p '&' q)) & M |= (('not' p) 'or' ('not' q)) => ('not' (p '&' q)) )
let v be Function of VAR,M; ::_thesis: ( M,v |= (('not' p) 'or' ('not' q)) => ('not' (p '&' q)) & M |= (('not' p) 'or' ('not' q)) => ('not' (p '&' q)) )
now__::_thesis:_for_v_being_Function_of_VAR,M_holds_M,v_|=_(('not'_p)_'or'_('not'_q))_=>_('not'_(p_'&'_q))
let v be Function of VAR,M; ::_thesis: M,v |= (('not' p) 'or' ('not' q)) => ('not' (p '&' q))
now__::_thesis:_(_M,v_|=_('not'_p)_'or'_('not'_q)_implies_M,v_|=_'not'_(p_'&'_q)_)
assume M,v |= ('not' p) 'or' ('not' q) ; ::_thesis: M,v |= 'not' (p '&' q)
then ( M,v |= 'not' p or M,v |= 'not' q ) by ZF_MODEL:17;
then ( not M,v |= p or not M,v |= q ) by ZF_MODEL:14;
then not M,v |= p '&' q by ZF_MODEL:15;
hence M,v |= 'not' (p '&' q) by ZF_MODEL:14; ::_thesis: verum
end;
hence M,v |= (('not' p) 'or' ('not' q)) => ('not' (p '&' q)) by ZF_MODEL:18; ::_thesis: verum
end;
hence ( M,v |= (('not' p) 'or' ('not' q)) => ('not' (p '&' q)) & M |= (('not' p) 'or' ('not' q)) => ('not' (p '&' q)) ) by ZF_MODEL:def_5; ::_thesis: verum
end;
theorem :: ZF_LANG1:124
for p, q being ZF-formula
for M being non empty set
for v being Function of VAR,M holds
( M,v |= ('not' (p 'or' q)) => (('not' p) '&' ('not' q)) & M |= ('not' (p 'or' q)) => (('not' p) '&' ('not' q)) )
proof
let p, q be ZF-formula; ::_thesis: for M being non empty set
for v being Function of VAR,M holds
( M,v |= ('not' (p 'or' q)) => (('not' p) '&' ('not' q)) & M |= ('not' (p 'or' q)) => (('not' p) '&' ('not' q)) )
let M be non empty set ; ::_thesis: for v being Function of VAR,M holds
( M,v |= ('not' (p 'or' q)) => (('not' p) '&' ('not' q)) & M |= ('not' (p 'or' q)) => (('not' p) '&' ('not' q)) )
let v be Function of VAR,M; ::_thesis: ( M,v |= ('not' (p 'or' q)) => (('not' p) '&' ('not' q)) & M |= ('not' (p 'or' q)) => (('not' p) '&' ('not' q)) )
now__::_thesis:_for_v_being_Function_of_VAR,M_holds_M,v_|=_('not'_(p_'or'_q))_=>_(('not'_p)_'&'_('not'_q))
let v be Function of VAR,M; ::_thesis: M,v |= ('not' (p 'or' q)) => (('not' p) '&' ('not' q))
now__::_thesis:_(_M,v_|=_'not'_(p_'or'_q)_implies_M,v_|=_('not'_p)_'&'_('not'_q)_)
assume M,v |= 'not' (p 'or' q) ; ::_thesis: M,v |= ('not' p) '&' ('not' q)
then A1: not M,v |= p 'or' q by ZF_MODEL:14;
then not M,v |= q by ZF_MODEL:17;
then A2: M,v |= 'not' q by ZF_MODEL:14;
not M,v |= p by A1, ZF_MODEL:17;
then M,v |= 'not' p by ZF_MODEL:14;
hence M,v |= ('not' p) '&' ('not' q) by A2, ZF_MODEL:15; ::_thesis: verum
end;
hence M,v |= ('not' (p 'or' q)) => (('not' p) '&' ('not' q)) by ZF_MODEL:18; ::_thesis: verum
end;
hence ( M,v |= ('not' (p 'or' q)) => (('not' p) '&' ('not' q)) & M |= ('not' (p 'or' q)) => (('not' p) '&' ('not' q)) ) by ZF_MODEL:def_5; ::_thesis: verum
end;
theorem :: ZF_LANG1:125
for p, q being ZF-formula
for M being non empty set
for v being Function of VAR,M holds
( M,v |= (('not' p) '&' ('not' q)) => ('not' (p 'or' q)) & M |= (('not' p) '&' ('not' q)) => ('not' (p 'or' q)) )
proof
let p, q be ZF-formula; ::_thesis: for M being non empty set
for v being Function of VAR,M holds
( M,v |= (('not' p) '&' ('not' q)) => ('not' (p 'or' q)) & M |= (('not' p) '&' ('not' q)) => ('not' (p 'or' q)) )
let M be non empty set ; ::_thesis: for v being Function of VAR,M holds
( M,v |= (('not' p) '&' ('not' q)) => ('not' (p 'or' q)) & M |= (('not' p) '&' ('not' q)) => ('not' (p 'or' q)) )
let v be Function of VAR,M; ::_thesis: ( M,v |= (('not' p) '&' ('not' q)) => ('not' (p 'or' q)) & M |= (('not' p) '&' ('not' q)) => ('not' (p 'or' q)) )
now__::_thesis:_for_v_being_Function_of_VAR,M_holds_M,v_|=_(('not'_p)_'&'_('not'_q))_=>_('not'_(p_'or'_q))
let v be Function of VAR,M; ::_thesis: M,v |= (('not' p) '&' ('not' q)) => ('not' (p 'or' q))
now__::_thesis:_(_M,v_|=_('not'_p)_'&'_('not'_q)_implies_M,v_|=_'not'_(p_'or'_q)_)
assume A1: M,v |= ('not' p) '&' ('not' q) ; ::_thesis: M,v |= 'not' (p 'or' q)
then M,v |= 'not' q by ZF_MODEL:15;
then A2: not M,v |= q by ZF_MODEL:14;
M,v |= 'not' p by A1, ZF_MODEL:15;
then not M,v |= p by ZF_MODEL:14;
then not M,v |= p 'or' q by A2, ZF_MODEL:17;
hence M,v |= 'not' (p 'or' q) by ZF_MODEL:14; ::_thesis: verum
end;
hence M,v |= (('not' p) '&' ('not' q)) => ('not' (p 'or' q)) by ZF_MODEL:18; ::_thesis: verum
end;
hence ( M,v |= (('not' p) '&' ('not' q)) => ('not' (p 'or' q)) & M |= (('not' p) '&' ('not' q)) => ('not' (p 'or' q)) ) by ZF_MODEL:def_5; ::_thesis: verum
end;
theorem :: ZF_LANG1:126
for H being ZF-formula
for x being Variable
for M being non empty set holds M |= (All (x,H)) => H
proof
let H be ZF-formula; ::_thesis: for x being Variable
for M being non empty set holds M |= (All (x,H)) => H
let x be Variable; ::_thesis: for M being non empty set holds M |= (All (x,H)) => H
let M be non empty set ; ::_thesis: M |= (All (x,H)) => H
let v be Function of VAR,M; :: according to ZF_MODEL:def_5 ::_thesis: M,v |= (All (x,H)) => H
( M,v |= All (x,H) implies M,v / (x,(v . x)) |= H ) by Th71;
then ( M,v |= All (x,H) implies M,v |= H ) by FUNCT_7:35;
hence M,v |= (All (x,H)) => H by ZF_MODEL:18; ::_thesis: verum
end;
theorem :: ZF_LANG1:127
for H being ZF-formula
for x being Variable
for M being non empty set holds M |= H => (Ex (x,H))
proof
let H be ZF-formula; ::_thesis: for x being Variable
for M being non empty set holds M |= H => (Ex (x,H))
let x be Variable; ::_thesis: for M being non empty set holds M |= H => (Ex (x,H))
let M be non empty set ; ::_thesis: M |= H => (Ex (x,H))
let v be Function of VAR,M; :: according to ZF_MODEL:def_5 ::_thesis: M,v |= H => (Ex (x,H))
( M,v / (x,(v . x)) |= H implies M,v |= Ex (x,H) ) by Th73;
then ( M,v |= H implies M,v |= Ex (x,H) ) by FUNCT_7:35;
hence M,v |= H => (Ex (x,H)) by ZF_MODEL:18; ::_thesis: verum
end;
theorem Th128: :: ZF_LANG1:128
for H1, H2 being ZF-formula
for x being Variable
for M being non empty set st not x in Free H1 holds
M |= (All (x,(H1 => H2))) => (H1 => (All (x,H2)))
proof
let H1, H2 be ZF-formula; ::_thesis: for x being Variable
for M being non empty set st not x in Free H1 holds
M |= (All (x,(H1 => H2))) => (H1 => (All (x,H2)))
let x be Variable; ::_thesis: for M being non empty set st not x in Free H1 holds
M |= (All (x,(H1 => H2))) => (H1 => (All (x,H2)))
let M be non empty set ; ::_thesis: ( not x in Free H1 implies M |= (All (x,(H1 => H2))) => (H1 => (All (x,H2))) )
assume A1: not x in Free H1 ; ::_thesis: M |= (All (x,(H1 => H2))) => (H1 => (All (x,H2)))
let v be Function of VAR,M; :: according to ZF_MODEL:def_5 ::_thesis: M,v |= (All (x,(H1 => H2))) => (H1 => (All (x,H2)))
now__::_thesis:_(_M,v_|=_All_(x,(H1_=>_H2))_implies_M,v_|=_H1_=>_(All_(x,H2))_)
assume A2: M,v |= All (x,(H1 => H2)) ; ::_thesis: M,v |= H1 => (All (x,H2))
now__::_thesis:_(_M,v_|=_H1_implies_M,v_|=_All_(x,H2)_)
assume A3: M,v |= H1 ; ::_thesis: M,v |= All (x,H2)
now__::_thesis:_for_m_being_Element_of_M_holds_M,v_/_(x,m)_|=_H2
let m be Element of M; ::_thesis: M,v / (x,m) |= H2
M,v |= All (x,H1) by A1, A3, ZFMODEL1:10;
then A4: M,v / (x,m) |= H1 by Th71;
M,v / (x,m) |= H1 => H2 by A2, Th71;
hence M,v / (x,m) |= H2 by A4, ZF_MODEL:18; ::_thesis: verum
end;
hence M,v |= All (x,H2) by Th71; ::_thesis: verum
end;
hence M,v |= H1 => (All (x,H2)) by ZF_MODEL:18; ::_thesis: verum
end;
hence M,v |= (All (x,(H1 => H2))) => (H1 => (All (x,H2))) by ZF_MODEL:18; ::_thesis: verum
end;
theorem :: ZF_LANG1:129
for H1, H2 being ZF-formula
for x being Variable
for M being non empty set st not x in Free H1 & M |= H1 => H2 holds
M |= H1 => (All (x,H2))
proof
let H1, H2 be ZF-formula; ::_thesis: for x being Variable
for M being non empty set st not x in Free H1 & M |= H1 => H2 holds
M |= H1 => (All (x,H2))
let x be Variable; ::_thesis: for M being non empty set st not x in Free H1 & M |= H1 => H2 holds
M |= H1 => (All (x,H2))
let M be non empty set ; ::_thesis: ( not x in Free H1 & M |= H1 => H2 implies M |= H1 => (All (x,H2)) )
assume that
A1: not x in Free H1 and
A2: for v being Function of VAR,M holds M,v |= H1 => H2 ; :: according to ZF_MODEL:def_5 ::_thesis: M |= H1 => (All (x,H2))
let v be Function of VAR,M; :: according to ZF_MODEL:def_5 ::_thesis: M,v |= H1 => (All (x,H2))
M |= (All (x,(H1 => H2))) => (H1 => (All (x,H2))) by A1, Th128;
then A3: M,v |= (All (x,(H1 => H2))) => (H1 => (All (x,H2))) by ZF_MODEL:def_5;
for m being Element of M holds M,v / (x,m) |= H1 => H2 by A2;
then M,v |= All (x,(H1 => H2)) by Th71;
hence M,v |= H1 => (All (x,H2)) by A3, ZF_MODEL:18; ::_thesis: verum
end;
theorem Th130: :: ZF_LANG1:130
for H2, H1 being ZF-formula
for x being Variable
for M being non empty set st not x in Free H2 holds
M |= (All (x,(H1 => H2))) => ((Ex (x,H1)) => H2)
proof
let H2, H1 be ZF-formula; ::_thesis: for x being Variable
for M being non empty set st not x in Free H2 holds
M |= (All (x,(H1 => H2))) => ((Ex (x,H1)) => H2)
let x be Variable; ::_thesis: for M being non empty set st not x in Free H2 holds
M |= (All (x,(H1 => H2))) => ((Ex (x,H1)) => H2)
let M be non empty set ; ::_thesis: ( not x in Free H2 implies M |= (All (x,(H1 => H2))) => ((Ex (x,H1)) => H2) )
assume A1: not x in Free H2 ; ::_thesis: M |= (All (x,(H1 => H2))) => ((Ex (x,H1)) => H2)
let v be Function of VAR,M; :: according to ZF_MODEL:def_5 ::_thesis: M,v |= (All (x,(H1 => H2))) => ((Ex (x,H1)) => H2)
now__::_thesis:_(_M,v_|=_All_(x,(H1_=>_H2))_implies_M,v_|=_(Ex_(x,H1))_=>_H2_)
assume A2: M,v |= All (x,(H1 => H2)) ; ::_thesis: M,v |= (Ex (x,H1)) => H2
now__::_thesis:_(_M,v_|=_Ex_(x,H1)_implies_M,v_|=_H2_)
assume M,v |= Ex (x,H1) ; ::_thesis: M,v |= H2
then consider m being Element of M such that
A3: M,v / (x,m) |= H1 by Th73;
M,v / (x,m) |= H1 => H2 by A2, Th71;
then M,v / (x,m) |= H2 by A3, ZF_MODEL:18;
then M,v / (x,m) |= All (x,H2) by A1, ZFMODEL1:10;
then M,v |= All (x,H2) by Th72;
then M,v / (x,(v . x)) |= H2 by Th71;
hence M,v |= H2 by FUNCT_7:35; ::_thesis: verum
end;
hence M,v |= (Ex (x,H1)) => H2 by ZF_MODEL:18; ::_thesis: verum
end;
hence M,v |= (All (x,(H1 => H2))) => ((Ex (x,H1)) => H2) by ZF_MODEL:18; ::_thesis: verum
end;
theorem :: ZF_LANG1:131
for H2, H1 being ZF-formula
for x being Variable
for M being non empty set st not x in Free H2 & M |= H1 => H2 holds
M |= (Ex (x,H1)) => H2
proof
let H2, H1 be ZF-formula; ::_thesis: for x being Variable
for M being non empty set st not x in Free H2 & M |= H1 => H2 holds
M |= (Ex (x,H1)) => H2
let x be Variable; ::_thesis: for M being non empty set st not x in Free H2 & M |= H1 => H2 holds
M |= (Ex (x,H1)) => H2
let M be non empty set ; ::_thesis: ( not x in Free H2 & M |= H1 => H2 implies M |= (Ex (x,H1)) => H2 )
assume that
A1: not x in Free H2 and
A2: for v being Function of VAR,M holds M,v |= H1 => H2 ; :: according to ZF_MODEL:def_5 ::_thesis: M |= (Ex (x,H1)) => H2
let v be Function of VAR,M; :: according to ZF_MODEL:def_5 ::_thesis: M,v |= (Ex (x,H1)) => H2
M |= (All (x,(H1 => H2))) => ((Ex (x,H1)) => H2) by A1, Th130;
then A3: M,v |= (All (x,(H1 => H2))) => ((Ex (x,H1)) => H2) by ZF_MODEL:def_5;
for m being Element of M holds M,v / (x,m) |= H1 => H2 by A2;
then M,v |= All (x,(H1 => H2)) by Th71;
hence M,v |= (Ex (x,H1)) => H2 by A3, ZF_MODEL:18; ::_thesis: verum
end;
theorem :: ZF_LANG1:132
for H1, H2 being ZF-formula
for x being Variable
for M being non empty set st M |= H1 => (All (x,H2)) holds
M |= H1 => H2
proof
let H1, H2 be ZF-formula; ::_thesis: for x being Variable
for M being non empty set st M |= H1 => (All (x,H2)) holds
M |= H1 => H2
let x be Variable; ::_thesis: for M being non empty set st M |= H1 => (All (x,H2)) holds
M |= H1 => H2
let M be non empty set ; ::_thesis: ( M |= H1 => (All (x,H2)) implies M |= H1 => H2 )
assume A1: for v being Function of VAR,M holds M,v |= H1 => (All (x,H2)) ; :: according to ZF_MODEL:def_5 ::_thesis: M |= H1 => H2
let v be Function of VAR,M; :: according to ZF_MODEL:def_5 ::_thesis: M,v |= H1 => H2
A2: M,v |= H1 => (All (x,H2)) by A1;
now__::_thesis:_(_M,v_|=_H1_implies_M,v_|=_H2_)
assume M,v |= H1 ; ::_thesis: M,v |= H2
then M,v |= All (x,H2) by A2, ZF_MODEL:18;
then M,v / (x,(v . x)) |= H2 by Th71;
hence M,v |= H2 by FUNCT_7:35; ::_thesis: verum
end;
hence M,v |= H1 => H2 by ZF_MODEL:18; ::_thesis: verum
end;
theorem :: ZF_LANG1:133
for H1, H2 being ZF-formula
for x being Variable
for M being non empty set st M |= (Ex (x,H1)) => H2 holds
M |= H1 => H2
proof
let H1, H2 be ZF-formula; ::_thesis: for x being Variable
for M being non empty set st M |= (Ex (x,H1)) => H2 holds
M |= H1 => H2
let x be Variable; ::_thesis: for M being non empty set st M |= (Ex (x,H1)) => H2 holds
M |= H1 => H2
let M be non empty set ; ::_thesis: ( M |= (Ex (x,H1)) => H2 implies M |= H1 => H2 )
assume A1: for v being Function of VAR,M holds M,v |= (Ex (x,H1)) => H2 ; :: according to ZF_MODEL:def_5 ::_thesis: M |= H1 => H2
let v be Function of VAR,M; :: according to ZF_MODEL:def_5 ::_thesis: M,v |= H1 => H2
A2: M,v |= (Ex (x,H1)) => H2 by A1;
now__::_thesis:_(_M,v_|=_H1_implies_M,v_|=_H2_)
assume M,v |= H1 ; ::_thesis: M,v |= H2
then M,v / (x,(v . x)) |= H1 by FUNCT_7:35;
then M,v |= Ex (x,H1) by Th73;
hence M,v |= H2 by A2, ZF_MODEL:18; ::_thesis: verum
end;
hence M,v |= H1 => H2 by ZF_MODEL:18; ::_thesis: verum
end;
theorem :: ZF_LANG1:134
WFF c= bool [:NAT,NAT:]
proof
let a be set ; :: according to TARSKI:def_3 ::_thesis: ( not a in WFF or a in bool [:NAT,NAT:] )
assume a in WFF ; ::_thesis: a in bool [:NAT,NAT:]
then reconsider H = a as ZF-formula by ZF_LANG:4;
H c= [:NAT,NAT:] ;
hence a in bool [:NAT,NAT:] ; ::_thesis: verum
end;
definition
let H be ZF-formula;
func variables_in H -> set equals :: ZF_LANG1:def 2
(rng H) \ {0,1,2,3,4};
correctness
coherence
(rng H) \ {0,1,2,3,4} is set ;
;
end;
:: deftheorem defines variables_in ZF_LANG1:def_2_:_
for H being ZF-formula holds variables_in H = (rng H) \ {0,1,2,3,4};
theorem Th135: :: ZF_LANG1:135
for x being Variable holds
( x <> 0 & x <> 1 & x <> 2 & x <> 3 & x <> 4 )
proof
let x be Variable; ::_thesis: ( x <> 0 & x <> 1 & x <> 2 & x <> 3 & x <> 4 )
x in VAR ;
then A1: ex i being Element of NAT st
( x = i & 5 <= i ) ;
assume ( x = 0 or x = 1 or x = 2 or x = 3 or x = 4 ) ; ::_thesis: contradiction
hence contradiction by A1; ::_thesis: verum
end;
theorem Th136: :: ZF_LANG1:136
for x being Variable holds not x in {0,1,2,3,4}
proof
let x be Variable; ::_thesis: not x in {0,1,2,3,4}
assume x in {0,1,2,3,4} ; ::_thesis: contradiction
then x in {0,1} \/ {2,3,4} by ENUMSET1:8;
then ( x in {0,1} or x in {2,3,4} ) by XBOOLE_0:def_3;
then A1: ( x = 0 or x = 1 or x = 2 or x = 3 or x = 4 ) by ENUMSET1:def_1, TARSKI:def_2;
x in VAR ;
then ex i being Element of NAT st
( x = i & 5 <= i ) ;
hence contradiction by A1; ::_thesis: verum
end;
theorem Th137: :: ZF_LANG1:137
for H being ZF-formula
for a being set st a in variables_in H holds
( a <> 0 & a <> 1 & a <> 2 & a <> 3 & a <> 4 )
proof
let H be ZF-formula; ::_thesis: for a being set st a in variables_in H holds
( a <> 0 & a <> 1 & a <> 2 & a <> 3 & a <> 4 )
let a be set ; ::_thesis: ( a in variables_in H implies ( a <> 0 & a <> 1 & a <> 2 & a <> 3 & a <> 4 ) )
assume a in variables_in H ; ::_thesis: ( a <> 0 & a <> 1 & a <> 2 & a <> 3 & a <> 4 )
then not a in {0,1,2,3,4} by XBOOLE_0:def_5;
then not a in {0,1} \/ {2,3,4} by ENUMSET1:8;
then ( not a in {0,1} & not a in {2,3,4} ) by XBOOLE_0:def_3;
hence ( a <> 0 & a <> 1 & a <> 2 & a <> 3 & a <> 4 ) by ENUMSET1:def_1, TARSKI:def_2; ::_thesis: verum
end;
theorem Th138: :: ZF_LANG1:138
for x, y being Variable holds variables_in (x '=' y) = {x,y}
proof
let x, y be Variable; ::_thesis: variables_in (x '=' y) = {x,y}
A1: rng (x '=' y) = (rng (<*0*> ^ <*x*>)) \/ (rng <*y*>) by FINSEQ_1:31
.= ((rng <*0*>) \/ (rng <*x*>)) \/ (rng <*y*>) by FINSEQ_1:31
.= ({0} \/ (rng <*x*>)) \/ (rng <*y*>) by FINSEQ_1:39
.= ({0} \/ {x}) \/ (rng <*y*>) by FINSEQ_1:39
.= ({0} \/ {x}) \/ {y} by FINSEQ_1:39
.= {0} \/ ({x} \/ {y}) by XBOOLE_1:4
.= {0} \/ {x,y} by ENUMSET1:1 ;
thus variables_in (x '=' y) c= {x,y} :: according to XBOOLE_0:def_10 ::_thesis: {x,y} c= variables_in (x '=' y)
proof
let a be set ; :: according to TARSKI:def_3 ::_thesis: ( not a in variables_in (x '=' y) or a in {x,y} )
assume A2: a in variables_in (x '=' y) ; ::_thesis: a in {x,y}
then a <> 0 by Th137;
then not a in {0} by TARSKI:def_1;
hence a in {x,y} by A1, A2, XBOOLE_0:def_3; ::_thesis: verum
end;
let a be set ; :: according to TARSKI:def_3 ::_thesis: ( not a in {x,y} or a in variables_in (x '=' y) )
assume A3: a in {x,y} ; ::_thesis: a in variables_in (x '=' y)
then ( a = x or a = y ) by TARSKI:def_2;
then A4: not a in {0,1,2,3,4} by Th136;
a in {0} \/ {x,y} by A3, XBOOLE_0:def_3;
hence a in variables_in (x '=' y) by A1, A4, XBOOLE_0:def_5; ::_thesis: verum
end;
theorem Th139: :: ZF_LANG1:139
for x, y being Variable holds variables_in (x 'in' y) = {x,y}
proof
let x, y be Variable; ::_thesis: variables_in (x 'in' y) = {x,y}
A1: rng (x 'in' y) = (rng (<*1*> ^ <*x*>)) \/ (rng <*y*>) by FINSEQ_1:31
.= ((rng <*1*>) \/ (rng <*x*>)) \/ (rng <*y*>) by FINSEQ_1:31
.= ({1} \/ (rng <*x*>)) \/ (rng <*y*>) by FINSEQ_1:39
.= ({1} \/ {x}) \/ (rng <*y*>) by FINSEQ_1:39
.= ({1} \/ {x}) \/ {y} by FINSEQ_1:39
.= {1} \/ ({x} \/ {y}) by XBOOLE_1:4
.= {1} \/ {x,y} by ENUMSET1:1 ;
thus variables_in (x 'in' y) c= {x,y} :: according to XBOOLE_0:def_10 ::_thesis: {x,y} c= variables_in (x 'in' y)
proof
let a be set ; :: according to TARSKI:def_3 ::_thesis: ( not a in variables_in (x 'in' y) or a in {x,y} )
assume A2: a in variables_in (x 'in' y) ; ::_thesis: a in {x,y}
then a <> 1 by Th137;
then not a in {1} by TARSKI:def_1;
hence a in {x,y} by A1, A2, XBOOLE_0:def_3; ::_thesis: verum
end;
let a be set ; :: according to TARSKI:def_3 ::_thesis: ( not a in {x,y} or a in variables_in (x 'in' y) )
assume A3: a in {x,y} ; ::_thesis: a in variables_in (x 'in' y)
then ( a = x or a = y ) by TARSKI:def_2;
then A4: not a in {0,1,2,3,4} by Th136;
a in {1} \/ {x,y} by A3, XBOOLE_0:def_3;
hence a in variables_in (x 'in' y) by A1, A4, XBOOLE_0:def_5; ::_thesis: verum
end;
theorem Th140: :: ZF_LANG1:140
for H being ZF-formula holds variables_in ('not' H) = variables_in H
proof
let H be ZF-formula; ::_thesis: variables_in ('not' H) = variables_in H
A1: rng ('not' H) = (rng <*2*>) \/ (rng H) by FINSEQ_1:31
.= {2} \/ (rng H) by FINSEQ_1:39 ;
thus variables_in ('not' H) c= variables_in H :: according to XBOOLE_0:def_10 ::_thesis: variables_in H c= variables_in ('not' H)
proof
let a be set ; :: according to TARSKI:def_3 ::_thesis: ( not a in variables_in ('not' H) or a in variables_in H )
assume A2: a in variables_in ('not' H) ; ::_thesis: a in variables_in H
then a <> 2 by Th137;
then not a in {2} by TARSKI:def_1;
then A3: a in rng H by A1, A2, XBOOLE_0:def_3;
not a in {0,1,2,3,4} by A2, XBOOLE_0:def_5;
hence a in variables_in H by A3, XBOOLE_0:def_5; ::_thesis: verum
end;
thus variables_in H c= variables_in ('not' H) by A1, XBOOLE_1:7, XBOOLE_1:33; ::_thesis: verum
end;
theorem Th141: :: ZF_LANG1:141
for H1, H2 being ZF-formula holds variables_in (H1 '&' H2) = (variables_in H1) \/ (variables_in H2)
proof
let H1, H2 be ZF-formula; ::_thesis: variables_in (H1 '&' H2) = (variables_in H1) \/ (variables_in H2)
A1: (variables_in H1) \/ (variables_in H2) = ((rng H1) \/ (rng H2)) \ {0,1,2,3,4} by XBOOLE_1:42;
A2: rng (H1 '&' H2) = (rng (<*3*> ^ H1)) \/ (rng H2) by FINSEQ_1:31
.= ((rng <*3*>) \/ (rng H1)) \/ (rng H2) by FINSEQ_1:31
.= ({3} \/ (rng H1)) \/ (rng H2) by FINSEQ_1:39
.= {3} \/ ((rng H1) \/ (rng H2)) by XBOOLE_1:4 ;
thus variables_in (H1 '&' H2) c= (variables_in H1) \/ (variables_in H2) :: according to XBOOLE_0:def_10 ::_thesis: (variables_in H1) \/ (variables_in H2) c= variables_in (H1 '&' H2)
proof
let a be set ; :: according to TARSKI:def_3 ::_thesis: ( not a in variables_in (H1 '&' H2) or a in (variables_in H1) \/ (variables_in H2) )
assume A3: a in variables_in (H1 '&' H2) ; ::_thesis: a in (variables_in H1) \/ (variables_in H2)
then a <> 3 by Th137;
then not a in {3} by TARSKI:def_1;
then A4: a in (rng H1) \/ (rng H2) by A2, A3, XBOOLE_0:def_3;
not a in {0,1,2,3,4} by A3, XBOOLE_0:def_5;
hence a in (variables_in H1) \/ (variables_in H2) by A1, A4, XBOOLE_0:def_5; ::_thesis: verum
end;
thus (variables_in H1) \/ (variables_in H2) c= variables_in (H1 '&' H2) by A2, A1, XBOOLE_1:7, XBOOLE_1:33; ::_thesis: verum
end;
theorem Th142: :: ZF_LANG1:142
for H being ZF-formula
for x being Variable holds variables_in (All (x,H)) = (variables_in H) \/ {x}
proof
let H be ZF-formula; ::_thesis: for x being Variable holds variables_in (All (x,H)) = (variables_in H) \/ {x}
let x be Variable; ::_thesis: variables_in (All (x,H)) = (variables_in H) \/ {x}
A1: rng (All (x,H)) = (rng (<*4*> ^ <*x*>)) \/ (rng H) by FINSEQ_1:31
.= ((rng <*4*>) \/ (rng <*x*>)) \/ (rng H) by FINSEQ_1:31
.= ({4} \/ (rng <*x*>)) \/ (rng H) by FINSEQ_1:39
.= ({4} \/ {x}) \/ (rng H) by FINSEQ_1:39
.= {4} \/ ({x} \/ (rng H)) by XBOOLE_1:4 ;
thus variables_in (All (x,H)) c= (variables_in H) \/ {x} :: according to XBOOLE_0:def_10 ::_thesis: (variables_in H) \/ {x} c= variables_in (All (x,H))
proof
let a be set ; :: according to TARSKI:def_3 ::_thesis: ( not a in variables_in (All (x,H)) or a in (variables_in H) \/ {x} )
assume A2: a in variables_in (All (x,H)) ; ::_thesis: a in (variables_in H) \/ {x}
then a <> 4 by Th137;
then not a in {4} by TARSKI:def_1;
then a in {x} \/ (rng H) by A1, A2, XBOOLE_0:def_3;
then A3: ( a in {x} or a in rng H ) by XBOOLE_0:def_3;
not a in {0,1,2,3,4} by A2, XBOOLE_0:def_5;
then ( a in rng H implies a in variables_in H ) by XBOOLE_0:def_5;
hence a in (variables_in H) \/ {x} by A3, XBOOLE_0:def_3; ::_thesis: verum
end;
let a be set ; :: according to TARSKI:def_3 ::_thesis: ( not a in (variables_in H) \/ {x} or a in variables_in (All (x,H)) )
assume a in (variables_in H) \/ {x} ; ::_thesis: a in variables_in (All (x,H))
then A4: ( a in variables_in H or a in {x} ) by XBOOLE_0:def_3;
then a in {x} \/ (rng H) by XBOOLE_0:def_3;
then A5: a in {4} \/ ({x} \/ (rng H)) by XBOOLE_0:def_3;
( ( a in rng H & not a in {0,1,2,3,4} ) or ( a in {x} & x = a ) ) by A4, TARSKI:def_1, XBOOLE_0:def_5;
then not a in {0,1,2,3,4} by Th136;
hence a in variables_in (All (x,H)) by A1, A5, XBOOLE_0:def_5; ::_thesis: verum
end;
theorem :: ZF_LANG1:143
for H1, H2 being ZF-formula holds variables_in (H1 'or' H2) = (variables_in H1) \/ (variables_in H2)
proof
let H1, H2 be ZF-formula; ::_thesis: variables_in (H1 'or' H2) = (variables_in H1) \/ (variables_in H2)
thus variables_in (H1 'or' H2) = variables_in (('not' H1) '&' ('not' H2)) by Th140
.= (variables_in ('not' H1)) \/ (variables_in ('not' H2)) by Th141
.= (variables_in H1) \/ (variables_in ('not' H2)) by Th140
.= (variables_in H1) \/ (variables_in H2) by Th140 ; ::_thesis: verum
end;
theorem Th144: :: ZF_LANG1:144
for H1, H2 being ZF-formula holds variables_in (H1 => H2) = (variables_in H1) \/ (variables_in H2)
proof
let H1, H2 be ZF-formula; ::_thesis: variables_in (H1 => H2) = (variables_in H1) \/ (variables_in H2)
thus variables_in (H1 => H2) = variables_in (H1 '&' ('not' H2)) by Th140
.= (variables_in H1) \/ (variables_in ('not' H2)) by Th141
.= (variables_in H1) \/ (variables_in H2) by Th140 ; ::_thesis: verum
end;
theorem :: ZF_LANG1:145
for H1, H2 being ZF-formula holds variables_in (H1 <=> H2) = (variables_in H1) \/ (variables_in H2)
proof
let H1, H2 be ZF-formula; ::_thesis: variables_in (H1 <=> H2) = (variables_in H1) \/ (variables_in H2)
thus variables_in (H1 <=> H2) = (variables_in (H1 => H2)) \/ (variables_in (H2 => H1)) by Th141
.= ((variables_in H1) \/ (variables_in H2)) \/ (variables_in (H2 => H1)) by Th144
.= ((variables_in H1) \/ (variables_in H2)) \/ ((variables_in H1) \/ (variables_in H2)) by Th144
.= (variables_in H1) \/ (variables_in H2) ; ::_thesis: verum
end;
theorem Th146: :: ZF_LANG1:146
for H being ZF-formula
for x being Variable holds variables_in (Ex (x,H)) = (variables_in H) \/ {x}
proof
let H be ZF-formula; ::_thesis: for x being Variable holds variables_in (Ex (x,H)) = (variables_in H) \/ {x}
let x be Variable; ::_thesis: variables_in (Ex (x,H)) = (variables_in H) \/ {x}
thus variables_in (Ex (x,H)) = variables_in (All (x,('not' H))) by Th140
.= (variables_in ('not' H)) \/ {x} by Th142
.= (variables_in H) \/ {x} by Th140 ; ::_thesis: verum
end;
theorem Th147: :: ZF_LANG1:147
for H being ZF-formula
for x, y being Variable holds variables_in (All (x,y,H)) = (variables_in H) \/ {x,y}
proof
let H be ZF-formula; ::_thesis: for x, y being Variable holds variables_in (All (x,y,H)) = (variables_in H) \/ {x,y}
let x, y be Variable; ::_thesis: variables_in (All (x,y,H)) = (variables_in H) \/ {x,y}
thus variables_in (All (x,y,H)) = (variables_in (All (y,H))) \/ {x} by Th142
.= ((variables_in H) \/ {y}) \/ {x} by Th142
.= (variables_in H) \/ ({y} \/ {x}) by XBOOLE_1:4
.= (variables_in H) \/ {x,y} by ENUMSET1:1 ; ::_thesis: verum
end;
theorem Th148: :: ZF_LANG1:148
for H being ZF-formula
for x, y being Variable holds variables_in (Ex (x,y,H)) = (variables_in H) \/ {x,y}
proof
let H be ZF-formula; ::_thesis: for x, y being Variable holds variables_in (Ex (x,y,H)) = (variables_in H) \/ {x,y}
let x, y be Variable; ::_thesis: variables_in (Ex (x,y,H)) = (variables_in H) \/ {x,y}
thus variables_in (Ex (x,y,H)) = (variables_in (Ex (y,H))) \/ {x} by Th146
.= ((variables_in H) \/ {y}) \/ {x} by Th146
.= (variables_in H) \/ ({y} \/ {x}) by XBOOLE_1:4
.= (variables_in H) \/ {x,y} by ENUMSET1:1 ; ::_thesis: verum
end;
theorem :: ZF_LANG1:149
for H being ZF-formula
for x, y, z being Variable holds variables_in (All (x,y,z,H)) = (variables_in H) \/ {x,y,z}
proof
let H be ZF-formula; ::_thesis: for x, y, z being Variable holds variables_in (All (x,y,z,H)) = (variables_in H) \/ {x,y,z}
let x, y, z be Variable; ::_thesis: variables_in (All (x,y,z,H)) = (variables_in H) \/ {x,y,z}
thus variables_in (All (x,y,z,H)) = (variables_in (All (y,z,H))) \/ {x} by Th142
.= ((variables_in H) \/ {y,z}) \/ {x} by Th147
.= (variables_in H) \/ ({y,z} \/ {x}) by XBOOLE_1:4
.= (variables_in H) \/ {y,z,x} by ENUMSET1:3
.= (variables_in H) \/ {x,y,z} by ENUMSET1:59 ; ::_thesis: verum
end;
theorem :: ZF_LANG1:150
for H being ZF-formula
for x, y, z being Variable holds variables_in (Ex (x,y,z,H)) = (variables_in H) \/ {x,y,z}
proof
let H be ZF-formula; ::_thesis: for x, y, z being Variable holds variables_in (Ex (x,y,z,H)) = (variables_in H) \/ {x,y,z}
let x, y, z be Variable; ::_thesis: variables_in (Ex (x,y,z,H)) = (variables_in H) \/ {x,y,z}
thus variables_in (Ex (x,y,z,H)) = (variables_in (Ex (y,z,H))) \/ {x} by Th146
.= ((variables_in H) \/ {y,z}) \/ {x} by Th148
.= (variables_in H) \/ ({y,z} \/ {x}) by XBOOLE_1:4
.= (variables_in H) \/ {y,z,x} by ENUMSET1:3
.= (variables_in H) \/ {x,y,z} by ENUMSET1:59 ; ::_thesis: verum
end;
theorem :: ZF_LANG1:151
for H being ZF-formula holds Free H c= variables_in H
proof
let H be ZF-formula; ::_thesis: Free H c= variables_in H
defpred S1[ ZF-formula] means Free $1 c= variables_in $1;
A1: for H1 being ZF-formula st S1[H1] holds
S1[ 'not' H1]
proof
let H1 be ZF-formula; ::_thesis: ( S1[H1] implies S1[ 'not' H1] )
assume Free H1 c= variables_in H1 ; ::_thesis: S1[ 'not' H1]
then Free ('not' H1) c= variables_in H1 by Th60;
hence S1[ 'not' H1] by Th140; ::_thesis: verum
end;
A2: for H1, H2 being ZF-formula st S1[H1] & S1[H2] holds
S1[H1 '&' H2]
proof
let H1, H2 be ZF-formula; ::_thesis: ( S1[H1] & S1[H2] implies S1[H1 '&' H2] )
assume ( Free H1 c= variables_in H1 & Free H2 c= variables_in H2 ) ; ::_thesis: S1[H1 '&' H2]
then (Free H1) \/ (Free H2) c= (variables_in H1) \/ (variables_in H2) by XBOOLE_1:13;
then Free (H1 '&' H2) c= (variables_in H1) \/ (variables_in H2) by Th61;
hence S1[H1 '&' H2] by Th141; ::_thesis: verum
end;
A3: for H1 being ZF-formula
for x being Variable st S1[H1] holds
S1[ All (x,H1)]
proof
let H1 be ZF-formula; ::_thesis: for x being Variable st S1[H1] holds
S1[ All (x,H1)]
let x be Variable; ::_thesis: ( S1[H1] implies S1[ All (x,H1)] )
(Free H1) \ {x} c= Free H1 by XBOOLE_1:36;
then A4: Free (All (x,H1)) c= Free H1 by Th62;
variables_in H1 c= (variables_in H1) \/ {x} by XBOOLE_1:7;
then A5: variables_in H1 c= variables_in (All (x,H1)) by Th142;
assume Free H1 c= variables_in H1 ; ::_thesis: S1[ All (x,H1)]
then Free H1 c= variables_in (All (x,H1)) by A5, XBOOLE_1:1;
hence S1[ All (x,H1)] by A4, XBOOLE_1:1; ::_thesis: verum
end;
A6: for x, y being Variable holds
( S1[x '=' y] & S1[x 'in' y] )
proof
let x, y be Variable; ::_thesis: ( S1[x '=' y] & S1[x 'in' y] )
( variables_in (x '=' y) = {x,y} & variables_in (x 'in' y) = {x,y} ) by Th138, Th139;
hence ( S1[x '=' y] & S1[x 'in' y] ) by Th58, Th59; ::_thesis: verum
end;
for H being ZF-formula holds S1[H] from ZF_LANG1:sch_1(A6, A1, A2, A3);
hence Free H c= variables_in H ; ::_thesis: verum
end;
definition
let H be ZF-formula;
:: original: variables_in
redefine func variables_in H -> non empty Subset of VAR;
coherence
variables_in H is non empty Subset of VAR
proof
defpred S1[ ZF-formula] means variables_in $1 <> {} ;
A1: for H1, H2 being ZF-formula st S1[H1] & S1[H2] holds
S1[H1 '&' H2]
proof
let H1, H2 be ZF-formula; ::_thesis: ( S1[H1] & S1[H2] implies S1[H1 '&' H2] )
variables_in (H1 '&' H2) = (variables_in H1) \/ (variables_in H2) by Th141;
hence ( S1[H1] & S1[H2] implies S1[H1 '&' H2] ) ; ::_thesis: verum
end;
A2: for H being ZF-formula
for x being Variable st S1[H] holds
S1[ All (x,H)]
proof
let H be ZF-formula; ::_thesis: for x being Variable st S1[H] holds
S1[ All (x,H)]
let x be Variable; ::_thesis: ( S1[H] implies S1[ All (x,H)] )
variables_in (All (x,H)) = (variables_in H) \/ {x} by Th142;
hence ( S1[H] implies S1[ All (x,H)] ) ; ::_thesis: verum
end;
A3: for x, y being Variable holds
( S1[x '=' y] & S1[x 'in' y] )
proof
let x, y be Variable; ::_thesis: ( S1[x '=' y] & S1[x 'in' y] )
variables_in (x '=' y) = {x,y} by Th138;
hence ( S1[x '=' y] & S1[x 'in' y] ) by Th139; ::_thesis: verum
end;
A4: for H being ZF-formula st S1[H] holds
S1[ 'not' H] by Th140;
for H being ZF-formula holds S1[H] from ZF_LANG1:sch_1(A3, A4, A1, A2);
then reconsider D = variables_in H as non empty set ;
D c= VAR
proof
let a be set ; :: according to TARSKI:def_3 ::_thesis: ( not a in D or a in VAR )
A5: rng H c= NAT by FINSEQ_1:def_4;
A6: 0 + 1 = 1 ;
assume A7: a in D ; ::_thesis: a in VAR
then a in rng H ;
then reconsider i = a as Element of NAT by A5;
a <> 0 by A7, Th137;
then A8: 1 <= i by A6, NAT_1:13;
A9: 3 + 1 = 4 ;
A10: 2 + 1 = 3 ;
A11: 1 + 1 = 2 ;
a <> 1 by A7, Th137;
then 1 < i by A8, XXREAL_0:1;
then A12: 2 <= i by A11, NAT_1:13;
a <> 2 by A7, Th137;
then 2 < i by A12, XXREAL_0:1;
then A13: 3 <= i by A10, NAT_1:13;
a <> 3 by A7, Th137;
then 3 < i by A13, XXREAL_0:1;
then A14: 4 <= i by A9, NAT_1:13;
a <> 4 by A7, Th137;
then A15: 4 < i by A14, XXREAL_0:1;
4 + 1 = 5 ;
then 5 <= i by A15, NAT_1:13;
hence a in VAR ; ::_thesis: verum
end;
hence variables_in H is non empty Subset of VAR ; ::_thesis: verum
end;
end;
definition
let H be ZF-formula;
let x, y be Variable;
funcH / (x,y) -> Function means :Def3: :: ZF_LANG1:def 3
( dom it = dom H & ( for a being set st a in dom H holds
( ( H . a = x implies it . a = y ) & ( H . a <> x implies it . a = H . a ) ) ) );
existence
ex b1 being Function st
( dom b1 = dom H & ( for a being set st a in dom H holds
( ( H . a = x implies b1 . a = y ) & ( H . a <> x implies b1 . a = H . a ) ) ) )
proof
deffunc H1( set ) -> set = H . $1;
deffunc H2( set ) -> Variable = y;
set A = dom H;
defpred S1[ set ] means H . $1 = x;
thus ex f being Function st
( dom f = dom H & ( for a being set st a in dom H holds
( ( S1[a] implies f . a = H2(a) ) & ( not S1[a] implies f . a = H1(a) ) ) ) ) from PARTFUN1:sch_1(); ::_thesis: verum
end;
uniqueness
for b1, b2 being Function st dom b1 = dom H & ( for a being set st a in dom H holds
( ( H . a = x implies b1 . a = y ) & ( H . a <> x implies b1 . a = H . a ) ) ) & dom b2 = dom H & ( for a being set st a in dom H holds
( ( H . a = x implies b2 . a = y ) & ( H . a <> x implies b2 . a = H . a ) ) ) holds
b1 = b2
proof
let f1, f2 be Function; ::_thesis: ( dom f1 = dom H & ( for a being set st a in dom H holds
( ( H . a = x implies f1 . a = y ) & ( H . a <> x implies f1 . a = H . a ) ) ) & dom f2 = dom H & ( for a being set st a in dom H holds
( ( H . a = x implies f2 . a = y ) & ( H . a <> x implies f2 . a = H . a ) ) ) implies f1 = f2 )
assume that
A1: dom f1 = dom H and
A2: for a being set st a in dom H holds
( ( H . a = x implies f1 . a = y ) & ( H . a <> x implies f1 . a = H . a ) ) and
A3: dom f2 = dom H and
A4: for a being set st a in dom H holds
( ( H . a = x implies f2 . a = y ) & ( H . a <> x implies f2 . a = H . a ) ) ; ::_thesis: f1 = f2
now__::_thesis:_for_a_being_set_st_a_in_dom_H_holds_
f1_._a_=_f2_._a
let a be set ; ::_thesis: ( a in dom H implies f1 . a = f2 . a )
assume A5: a in dom H ; ::_thesis: f1 . a = f2 . a
then A6: ( H . a <> x implies f1 . a = H . a ) by A2;
( H . a = x implies f1 . a = y ) by A2, A5;
hence f1 . a = f2 . a by A4, A5, A6; ::_thesis: verum
end;
hence f1 = f2 by A1, A3, FUNCT_1:2; ::_thesis: verum
end;
end;
:: deftheorem Def3 defines / ZF_LANG1:def_3_:_
for H being ZF-formula
for x, y being Variable
for b4 being Function holds
( b4 = H / (x,y) iff ( dom b4 = dom H & ( for a being set st a in dom H holds
( ( H . a = x implies b4 . a = y ) & ( H . a <> x implies b4 . a = H . a ) ) ) ) );
theorem Th152: :: ZF_LANG1:152
for x1, x2, y1, y2, z1, z2 being Variable holds
( (x1 '=' x2) / (y1,y2) = z1 '=' z2 iff ( ( x1 <> y1 & x2 <> y1 & z1 = x1 & z2 = x2 ) or ( x1 = y1 & x2 <> y1 & z1 = y2 & z2 = x2 ) or ( x1 <> y1 & x2 = y1 & z1 = x1 & z2 = y2 ) or ( x1 = y1 & x2 = y1 & z1 = y2 & z2 = y2 ) ) )
proof
let x1, x2, y1, y2, z1, z2 be Variable; ::_thesis: ( (x1 '=' x2) / (y1,y2) = z1 '=' z2 iff ( ( x1 <> y1 & x2 <> y1 & z1 = x1 & z2 = x2 ) or ( x1 = y1 & x2 <> y1 & z1 = y2 & z2 = x2 ) or ( x1 <> y1 & x2 = y1 & z1 = x1 & z2 = y2 ) or ( x1 = y1 & x2 = y1 & z1 = y2 & z2 = y2 ) ) )
set H = x1 '=' x2;
set Hz = z1 '=' z2;
set f = (x1 '=' x2) / (y1,y2);
A1: ( (x1 '=' x2) . 1 = 0 & y1 <> 0 ) by Th135, ZF_LANG:15;
x1 '=' x2 is being_equality by ZF_LANG:5;
then A2: x1 '=' x2 is atomic by ZF_LANG:def_15;
then A3: len (x1 '=' x2) = 3 by ZF_LANG:11;
then A4: dom (x1 '=' x2) = {1,2,3} by FINSEQ_1:def_3, FINSEQ_3:1;
z1 '=' z2 is being_equality by ZF_LANG:5;
then A5: z1 '=' z2 is atomic by ZF_LANG:def_15;
then len (z1 '=' z2) = 3 by ZF_LANG:11;
then A6: dom (z1 '=' z2) = Seg 3 by FINSEQ_1:def_3;
Var1 (z1 '=' z2) = z1 by Th1;
then A7: (z1 '=' z2) . 2 = z1 by A5, ZF_LANG:35;
Var2 (z1 '=' z2) = z2 by Th1;
then A8: (z1 '=' z2) . 3 = z2 by A5, ZF_LANG:35;
A9: Var2 (x1 '=' x2) = x2 by Th1;
then A10: (x1 '=' x2) . 3 = x2 by A2, ZF_LANG:35;
A11: Var1 (x1 '=' x2) = x1 by Th1;
then A12: (x1 '=' x2) . 2 = x1 by A2, ZF_LANG:35;
thus ( not (x1 '=' x2) / (y1,y2) = z1 '=' z2 or ( x1 <> y1 & x2 <> y1 & z1 = x1 & z2 = x2 ) or ( x1 = y1 & x2 <> y1 & z1 = y2 & z2 = x2 ) or ( x1 <> y1 & x2 = y1 & z1 = x1 & z2 = y2 ) or ( x1 = y1 & x2 = y1 & z1 = y2 & z2 = y2 ) ) ::_thesis: ( ( ( x1 <> y1 & x2 <> y1 & z1 = x1 & z2 = x2 ) or ( x1 = y1 & x2 <> y1 & z1 = y2 & z2 = x2 ) or ( x1 <> y1 & x2 = y1 & z1 = x1 & z2 = y2 ) or ( x1 = y1 & x2 = y1 & z1 = y2 & z2 = y2 ) ) implies (x1 '=' x2) / (y1,y2) = z1 '=' z2 )
proof
assume A13: (x1 '=' x2) / (y1,y2) = z1 '=' z2 ; ::_thesis: ( ( x1 <> y1 & x2 <> y1 & z1 = x1 & z2 = x2 ) or ( x1 = y1 & x2 <> y1 & z1 = y2 & z2 = x2 ) or ( x1 <> y1 & x2 = y1 & z1 = x1 & z2 = y2 ) or ( x1 = y1 & x2 = y1 & z1 = y2 & z2 = y2 ) )
percases ( ( x1 <> y1 & x2 <> y1 ) or ( x1 = y1 & x2 <> y1 ) or ( x1 <> y1 & x2 = y1 ) or ( x1 = y1 & x2 = y1 ) ) ;
caseA14: ( x1 <> y1 & x2 <> y1 ) ; ::_thesis: ( z1 = x1 & z2 = x2 )
( 2 in dom (x1 '=' x2) & 3 in dom (x1 '=' x2) ) by A4, ENUMSET1:def_1;
hence ( z1 = x1 & z2 = x2 ) by A12, A10, A7, A8, A13, A14, Def3; ::_thesis: verum
end;
caseA15: ( x1 = y1 & x2 <> y1 ) ; ::_thesis: ( z1 = y2 & z2 = x2 )
A16: ( 2 in dom (x1 '=' x2) & 3 in dom (x1 '=' x2) ) by A4, ENUMSET1:def_1;
(x1 '=' x2) . 2 = y1 by A2, A11, A15, ZF_LANG:35;
hence ( z1 = y2 & z2 = x2 ) by A10, A7, A8, A13, A15, A16, Def3; ::_thesis: verum
end;
caseA17: ( x1 <> y1 & x2 = y1 ) ; ::_thesis: ( z1 = x1 & z2 = y2 )
A18: ( 2 in dom (x1 '=' x2) & 3 in dom (x1 '=' x2) ) by A4, ENUMSET1:def_1;
(x1 '=' x2) . 3 = y1 by A2, A9, A17, ZF_LANG:35;
hence ( z1 = x1 & z2 = y2 ) by A12, A7, A8, A13, A17, A18, Def3; ::_thesis: verum
end;
caseA19: ( x1 = y1 & x2 = y1 ) ; ::_thesis: ( z1 = y2 & z2 = y2 )
A20: ( 2 in dom (x1 '=' x2) & 3 in dom (x1 '=' x2) ) by A4, ENUMSET1:def_1;
( (x1 '=' x2) . 2 = y1 & (x1 '=' x2) . 3 = y1 ) by A2, A11, A9, A19, ZF_LANG:35;
hence ( z1 = y2 & z2 = y2 ) by A7, A8, A13, A20, Def3; ::_thesis: verum
end;
end;
end;
A21: dom (x1 '=' x2) = Seg 3 by A3, FINSEQ_1:def_3;
A22: dom ((x1 '=' x2) / (y1,y2)) = dom (x1 '=' x2) by Def3;
A23: now__::_thesis:_(_x1_<>_y1_&_x2_<>_y1_&_z1_=_x1_&_z2_=_x2_implies_(x1_'='_x2)_/_(y1,y2)_=_z1_'='_z2_)
assume A24: ( x1 <> y1 & x2 <> y1 & z1 = x1 & z2 = x2 ) ; ::_thesis: (x1 '=' x2) / (y1,y2) = z1 '=' z2
now__::_thesis:_for_a_being_set_st_a_in_dom_(x1_'='_x2)_holds_
(z1_'='_z2)_._a_=_((x1_'='_x2)_/_(y1,y2))_._a
let a be set ; ::_thesis: ( a in dom (x1 '=' x2) implies (z1 '=' z2) . a = ((x1 '=' x2) / (y1,y2)) . a )
assume A25: a in dom (x1 '=' x2) ; ::_thesis: (z1 '=' z2) . a = ((x1 '=' x2) / (y1,y2)) . a
then ( a = 1 or a = 2 or a = 3 ) by A4, ENUMSET1:def_1;
hence (z1 '=' z2) . a = ((x1 '=' x2) / (y1,y2)) . a by A12, A10, A1, A24, A25, Def3; ::_thesis: verum
end;
hence (x1 '=' x2) / (y1,y2) = z1 '=' z2 by A22, A21, A6, FUNCT_1:2; ::_thesis: verum
end;
A26: (z1 '=' z2) . 1 = 0 by ZF_LANG:15;
A27: now__::_thesis:_(_x1_<>_y1_&_x2_=_y1_&_z1_=_x1_&_z2_=_y2_implies_(x1_'='_x2)_/_(y1,y2)_=_z1_'='_z2_)
assume A28: ( x1 <> y1 & x2 = y1 & z1 = x1 & z2 = y2 ) ; ::_thesis: (x1 '=' x2) / (y1,y2) = z1 '=' z2
now__::_thesis:_for_a_being_set_st_a_in_dom_(x1_'='_x2)_holds_
(z1_'='_z2)_._a_=_((x1_'='_x2)_/_(y1,y2))_._a
let a be set ; ::_thesis: ( a in dom (x1 '=' x2) implies (z1 '=' z2) . a = ((x1 '=' x2) / (y1,y2)) . a )
assume A29: a in dom (x1 '=' x2) ; ::_thesis: (z1 '=' z2) . a = ((x1 '=' x2) / (y1,y2)) . a
then ( a = 1 or a = 2 or a = 3 ) by A4, ENUMSET1:def_1;
hence (z1 '=' z2) . a = ((x1 '=' x2) / (y1,y2)) . a by A12, A10, A26, A7, A8, A1, A28, A29, Def3; ::_thesis: verum
end;
hence (x1 '=' x2) / (y1,y2) = z1 '=' z2 by A22, A21, A6, FUNCT_1:2; ::_thesis: verum
end;
A30: now__::_thesis:_(_x1_=_y1_&_x2_=_y1_&_z1_=_y2_&_z2_=_y2_implies_(x1_'='_x2)_/_(y1,y2)_=_z1_'='_z2_)
assume A31: ( x1 = y1 & x2 = y1 & z1 = y2 & z2 = y2 ) ; ::_thesis: (x1 '=' x2) / (y1,y2) = z1 '=' z2
now__::_thesis:_for_a_being_set_st_a_in_dom_(x1_'='_x2)_holds_
(z1_'='_z2)_._a_=_((x1_'='_x2)_/_(y1,y2))_._a
let a be set ; ::_thesis: ( a in dom (x1 '=' x2) implies (z1 '=' z2) . a = ((x1 '=' x2) / (y1,y2)) . a )
assume A32: a in dom (x1 '=' x2) ; ::_thesis: (z1 '=' z2) . a = ((x1 '=' x2) / (y1,y2)) . a
then ( a = 1 or a = 2 or a = 3 ) by A4, ENUMSET1:def_1;
hence (z1 '=' z2) . a = ((x1 '=' x2) / (y1,y2)) . a by A12, A10, A26, A7, A8, A1, A31, A32, Def3; ::_thesis: verum
end;
hence (x1 '=' x2) / (y1,y2) = z1 '=' z2 by A22, A21, A6, FUNCT_1:2; ::_thesis: verum
end;
now__::_thesis:_(_x1_=_y1_&_x2_<>_y1_&_z1_=_y2_&_z2_=_x2_implies_(x1_'='_x2)_/_(y1,y2)_=_z1_'='_z2_)
assume A33: ( x1 = y1 & x2 <> y1 & z1 = y2 & z2 = x2 ) ; ::_thesis: (x1 '=' x2) / (y1,y2) = z1 '=' z2
now__::_thesis:_for_a_being_set_st_a_in_dom_(x1_'='_x2)_holds_
(z1_'='_z2)_._a_=_((x1_'='_x2)_/_(y1,y2))_._a
let a be set ; ::_thesis: ( a in dom (x1 '=' x2) implies (z1 '=' z2) . a = ((x1 '=' x2) / (y1,y2)) . a )
assume A34: a in dom (x1 '=' x2) ; ::_thesis: (z1 '=' z2) . a = ((x1 '=' x2) / (y1,y2)) . a
then ( a = 1 or a = 2 or a = 3 ) by A4, ENUMSET1:def_1;
hence (z1 '=' z2) . a = ((x1 '=' x2) / (y1,y2)) . a by A12, A10, A26, A7, A8, A1, A33, A34, Def3; ::_thesis: verum
end;
hence (x1 '=' x2) / (y1,y2) = z1 '=' z2 by A22, A21, A6, FUNCT_1:2; ::_thesis: verum
end;
hence ( ( ( x1 <> y1 & x2 <> y1 & z1 = x1 & z2 = x2 ) or ( x1 = y1 & x2 <> y1 & z1 = y2 & z2 = x2 ) or ( x1 <> y1 & x2 = y1 & z1 = x1 & z2 = y2 ) or ( x1 = y1 & x2 = y1 & z1 = y2 & z2 = y2 ) ) implies (x1 '=' x2) / (y1,y2) = z1 '=' z2 ) by A23, A27, A30; ::_thesis: verum
end;
theorem Th153: :: ZF_LANG1:153
for x1, x2, y1, y2 being Variable ex z1, z2 being Variable st (x1 '=' x2) / (y1,y2) = z1 '=' z2
proof
let x1, x2, y1, y2 be Variable; ::_thesis: ex z1, z2 being Variable st (x1 '=' x2) / (y1,y2) = z1 '=' z2
( ( x1 <> y1 & x2 <> y1 ) or ( x1 = y1 & x2 <> y1 ) or ( x1 <> y1 & x2 = y1 ) or ( x1 = y1 & x2 = y1 ) ) ;
then consider z1, z2 being Variable such that
A1: ( ( x1 <> y1 & x2 <> y1 & z1 = x1 & z2 = x2 ) or ( x1 = y1 & x2 <> y1 & z1 = y2 & z2 = x2 ) or ( x1 <> y1 & x2 = y1 & z1 = x1 & z2 = y2 ) or ( x1 = y1 & x2 = y1 & z1 = y2 & z2 = y2 ) ) ;
take z1 ; ::_thesis: ex z2 being Variable st (x1 '=' x2) / (y1,y2) = z1 '=' z2
take z2 ; ::_thesis: (x1 '=' x2) / (y1,y2) = z1 '=' z2
thus (x1 '=' x2) / (y1,y2) = z1 '=' z2 by A1, Th152; ::_thesis: verum
end;
theorem Th154: :: ZF_LANG1:154
for x1, x2, y1, y2, z1, z2 being Variable holds
( (x1 'in' x2) / (y1,y2) = z1 'in' z2 iff ( ( x1 <> y1 & x2 <> y1 & z1 = x1 & z2 = x2 ) or ( x1 = y1 & x2 <> y1 & z1 = y2 & z2 = x2 ) or ( x1 <> y1 & x2 = y1 & z1 = x1 & z2 = y2 ) or ( x1 = y1 & x2 = y1 & z1 = y2 & z2 = y2 ) ) )
proof
let x1, x2, y1, y2, z1, z2 be Variable; ::_thesis: ( (x1 'in' x2) / (y1,y2) = z1 'in' z2 iff ( ( x1 <> y1 & x2 <> y1 & z1 = x1 & z2 = x2 ) or ( x1 = y1 & x2 <> y1 & z1 = y2 & z2 = x2 ) or ( x1 <> y1 & x2 = y1 & z1 = x1 & z2 = y2 ) or ( x1 = y1 & x2 = y1 & z1 = y2 & z2 = y2 ) ) )
set H = x1 'in' x2;
set Hz = z1 'in' z2;
set f = (x1 'in' x2) / (y1,y2);
A1: ( (x1 'in' x2) . 1 = 1 & y1 <> 1 ) by Th135, ZF_LANG:15;
x1 'in' x2 is being_membership by ZF_LANG:5;
then A2: x1 'in' x2 is atomic by ZF_LANG:def_15;
then A3: len (x1 'in' x2) = 3 by ZF_LANG:11;
then A4: dom (x1 'in' x2) = {1,2,3} by FINSEQ_1:def_3, FINSEQ_3:1;
z1 'in' z2 is being_membership by ZF_LANG:5;
then A5: z1 'in' z2 is atomic by ZF_LANG:def_15;
then len (z1 'in' z2) = 3 by ZF_LANG:11;
then A6: dom (z1 'in' z2) = Seg 3 by FINSEQ_1:def_3;
Var1 (z1 'in' z2) = z1 by Th2;
then A7: (z1 'in' z2) . 2 = z1 by A5, ZF_LANG:35;
Var2 (z1 'in' z2) = z2 by Th2;
then A8: (z1 'in' z2) . 3 = z2 by A5, ZF_LANG:35;
A9: Var2 (x1 'in' x2) = x2 by Th2;
then A10: (x1 'in' x2) . 3 = x2 by A2, ZF_LANG:35;
A11: Var1 (x1 'in' x2) = x1 by Th2;
then A12: (x1 'in' x2) . 2 = x1 by A2, ZF_LANG:35;
thus ( not (x1 'in' x2) / (y1,y2) = z1 'in' z2 or ( x1 <> y1 & x2 <> y1 & z1 = x1 & z2 = x2 ) or ( x1 = y1 & x2 <> y1 & z1 = y2 & z2 = x2 ) or ( x1 <> y1 & x2 = y1 & z1 = x1 & z2 = y2 ) or ( x1 = y1 & x2 = y1 & z1 = y2 & z2 = y2 ) ) ::_thesis: ( ( ( x1 <> y1 & x2 <> y1 & z1 = x1 & z2 = x2 ) or ( x1 = y1 & x2 <> y1 & z1 = y2 & z2 = x2 ) or ( x1 <> y1 & x2 = y1 & z1 = x1 & z2 = y2 ) or ( x1 = y1 & x2 = y1 & z1 = y2 & z2 = y2 ) ) implies (x1 'in' x2) / (y1,y2) = z1 'in' z2 )
proof
assume A13: (x1 'in' x2) / (y1,y2) = z1 'in' z2 ; ::_thesis: ( ( x1 <> y1 & x2 <> y1 & z1 = x1 & z2 = x2 ) or ( x1 = y1 & x2 <> y1 & z1 = y2 & z2 = x2 ) or ( x1 <> y1 & x2 = y1 & z1 = x1 & z2 = y2 ) or ( x1 = y1 & x2 = y1 & z1 = y2 & z2 = y2 ) )
percases ( ( x1 <> y1 & x2 <> y1 ) or ( x1 = y1 & x2 <> y1 ) or ( x1 <> y1 & x2 = y1 ) or ( x1 = y1 & x2 = y1 ) ) ;
caseA14: ( x1 <> y1 & x2 <> y1 ) ; ::_thesis: ( z1 = x1 & z2 = x2 )
( 2 in dom (x1 'in' x2) & 3 in dom (x1 'in' x2) ) by A4, ENUMSET1:def_1;
hence ( z1 = x1 & z2 = x2 ) by A12, A10, A7, A8, A13, A14, Def3; ::_thesis: verum
end;
caseA15: ( x1 = y1 & x2 <> y1 ) ; ::_thesis: ( z1 = y2 & z2 = x2 )
A16: ( 2 in dom (x1 'in' x2) & 3 in dom (x1 'in' x2) ) by A4, ENUMSET1:def_1;
(x1 'in' x2) . 2 = y1 by A2, A11, A15, ZF_LANG:35;
hence ( z1 = y2 & z2 = x2 ) by A10, A7, A8, A13, A15, A16, Def3; ::_thesis: verum
end;
caseA17: ( x1 <> y1 & x2 = y1 ) ; ::_thesis: ( z1 = x1 & z2 = y2 )
A18: ( 2 in dom (x1 'in' x2) & 3 in dom (x1 'in' x2) ) by A4, ENUMSET1:def_1;
(x1 'in' x2) . 3 = y1 by A2, A9, A17, ZF_LANG:35;
hence ( z1 = x1 & z2 = y2 ) by A12, A7, A8, A13, A17, A18, Def3; ::_thesis: verum
end;
caseA19: ( x1 = y1 & x2 = y1 ) ; ::_thesis: ( z1 = y2 & z2 = y2 )
A20: ( 2 in dom (x1 'in' x2) & 3 in dom (x1 'in' x2) ) by A4, ENUMSET1:def_1;
( (x1 'in' x2) . 2 = y1 & (x1 'in' x2) . 3 = y1 ) by A2, A11, A9, A19, ZF_LANG:35;
hence ( z1 = y2 & z2 = y2 ) by A7, A8, A13, A20, Def3; ::_thesis: verum
end;
end;
end;
A21: dom (x1 'in' x2) = Seg 3 by A3, FINSEQ_1:def_3;
A22: dom ((x1 'in' x2) / (y1,y2)) = dom (x1 'in' x2) by Def3;
A23: now__::_thesis:_(_x1_<>_y1_&_x2_<>_y1_&_z1_=_x1_&_z2_=_x2_implies_(x1_'in'_x2)_/_(y1,y2)_=_z1_'in'_z2_)
assume A24: ( x1 <> y1 & x2 <> y1 & z1 = x1 & z2 = x2 ) ; ::_thesis: (x1 'in' x2) / (y1,y2) = z1 'in' z2
now__::_thesis:_for_a_being_set_st_a_in_dom_(x1_'in'_x2)_holds_
(z1_'in'_z2)_._a_=_((x1_'in'_x2)_/_(y1,y2))_._a
let a be set ; ::_thesis: ( a in dom (x1 'in' x2) implies (z1 'in' z2) . a = ((x1 'in' x2) / (y1,y2)) . a )
assume A25: a in dom (x1 'in' x2) ; ::_thesis: (z1 'in' z2) . a = ((x1 'in' x2) / (y1,y2)) . a
then ( a = 1 or a = 2 or a = 3 ) by A4, ENUMSET1:def_1;
hence (z1 'in' z2) . a = ((x1 'in' x2) / (y1,y2)) . a by A12, A10, A1, A24, A25, Def3; ::_thesis: verum
end;
hence (x1 'in' x2) / (y1,y2) = z1 'in' z2 by A22, A21, A6, FUNCT_1:2; ::_thesis: verum
end;
A26: (z1 'in' z2) . 1 = 1 by ZF_LANG:15;
A27: now__::_thesis:_(_x1_<>_y1_&_x2_=_y1_&_z1_=_x1_&_z2_=_y2_implies_(x1_'in'_x2)_/_(y1,y2)_=_z1_'in'_z2_)
assume A28: ( x1 <> y1 & x2 = y1 & z1 = x1 & z2 = y2 ) ; ::_thesis: (x1 'in' x2) / (y1,y2) = z1 'in' z2
now__::_thesis:_for_a_being_set_st_a_in_dom_(x1_'in'_x2)_holds_
(z1_'in'_z2)_._a_=_((x1_'in'_x2)_/_(y1,y2))_._a
let a be set ; ::_thesis: ( a in dom (x1 'in' x2) implies (z1 'in' z2) . a = ((x1 'in' x2) / (y1,y2)) . a )
assume A29: a in dom (x1 'in' x2) ; ::_thesis: (z1 'in' z2) . a = ((x1 'in' x2) / (y1,y2)) . a
then ( a = 1 or a = 2 or a = 3 ) by A4, ENUMSET1:def_1;
hence (z1 'in' z2) . a = ((x1 'in' x2) / (y1,y2)) . a by A12, A10, A26, A7, A8, A1, A28, A29, Def3; ::_thesis: verum
end;
hence (x1 'in' x2) / (y1,y2) = z1 'in' z2 by A22, A21, A6, FUNCT_1:2; ::_thesis: verum
end;
A30: now__::_thesis:_(_x1_=_y1_&_x2_=_y1_&_z1_=_y2_&_z2_=_y2_implies_(x1_'in'_x2)_/_(y1,y2)_=_z1_'in'_z2_)
assume A31: ( x1 = y1 & x2 = y1 & z1 = y2 & z2 = y2 ) ; ::_thesis: (x1 'in' x2) / (y1,y2) = z1 'in' z2
now__::_thesis:_for_a_being_set_st_a_in_dom_(x1_'in'_x2)_holds_
(z1_'in'_z2)_._a_=_((x1_'in'_x2)_/_(y1,y2))_._a
let a be set ; ::_thesis: ( a in dom (x1 'in' x2) implies (z1 'in' z2) . a = ((x1 'in' x2) / (y1,y2)) . a )
assume A32: a in dom (x1 'in' x2) ; ::_thesis: (z1 'in' z2) . a = ((x1 'in' x2) / (y1,y2)) . a
then ( a = 1 or a = 2 or a = 3 ) by A4, ENUMSET1:def_1;
hence (z1 'in' z2) . a = ((x1 'in' x2) / (y1,y2)) . a by A12, A10, A26, A7, A8, A1, A31, A32, Def3; ::_thesis: verum
end;
hence (x1 'in' x2) / (y1,y2) = z1 'in' z2 by A22, A21, A6, FUNCT_1:2; ::_thesis: verum
end;
now__::_thesis:_(_x1_=_y1_&_x2_<>_y1_&_z1_=_y2_&_z2_=_x2_implies_(x1_'in'_x2)_/_(y1,y2)_=_z1_'in'_z2_)
assume A33: ( x1 = y1 & x2 <> y1 & z1 = y2 & z2 = x2 ) ; ::_thesis: (x1 'in' x2) / (y1,y2) = z1 'in' z2
now__::_thesis:_for_a_being_set_st_a_in_dom_(x1_'in'_x2)_holds_
(z1_'in'_z2)_._a_=_((x1_'in'_x2)_/_(y1,y2))_._a
let a be set ; ::_thesis: ( a in dom (x1 'in' x2) implies (z1 'in' z2) . a = ((x1 'in' x2) / (y1,y2)) . a )
assume A34: a in dom (x1 'in' x2) ; ::_thesis: (z1 'in' z2) . a = ((x1 'in' x2) / (y1,y2)) . a
then ( a = 1 or a = 2 or a = 3 ) by A4, ENUMSET1:def_1;
hence (z1 'in' z2) . a = ((x1 'in' x2) / (y1,y2)) . a by A12, A10, A26, A7, A8, A1, A33, A34, Def3; ::_thesis: verum
end;
hence (x1 'in' x2) / (y1,y2) = z1 'in' z2 by A22, A21, A6, FUNCT_1:2; ::_thesis: verum
end;
hence ( ( ( x1 <> y1 & x2 <> y1 & z1 = x1 & z2 = x2 ) or ( x1 = y1 & x2 <> y1 & z1 = y2 & z2 = x2 ) or ( x1 <> y1 & x2 = y1 & z1 = x1 & z2 = y2 ) or ( x1 = y1 & x2 = y1 & z1 = y2 & z2 = y2 ) ) implies (x1 'in' x2) / (y1,y2) = z1 'in' z2 ) by A23, A27, A30; ::_thesis: verum
end;
theorem Th155: :: ZF_LANG1:155
for x1, x2, y1, y2 being Variable ex z1, z2 being Variable st (x1 'in' x2) / (y1,y2) = z1 'in' z2
proof
let x1, x2, y1, y2 be Variable; ::_thesis: ex z1, z2 being Variable st (x1 'in' x2) / (y1,y2) = z1 'in' z2
( ( x1 <> y1 & x2 <> y1 ) or ( x1 = y1 & x2 <> y1 ) or ( x1 <> y1 & x2 = y1 ) or ( x1 = y1 & x2 = y1 ) ) ;
then consider z1, z2 being Variable such that
A1: ( ( x1 <> y1 & x2 <> y1 & z1 = x1 & z2 = x2 ) or ( x1 = y1 & x2 <> y1 & z1 = y2 & z2 = x2 ) or ( x1 <> y1 & x2 = y1 & z1 = x1 & z2 = y2 ) or ( x1 = y1 & x2 = y1 & z1 = y2 & z2 = y2 ) ) ;
take z1 ; ::_thesis: ex z2 being Variable st (x1 'in' x2) / (y1,y2) = z1 'in' z2
take z2 ; ::_thesis: (x1 'in' x2) / (y1,y2) = z1 'in' z2
thus (x1 'in' x2) / (y1,y2) = z1 'in' z2 by A1, Th154; ::_thesis: verum
end;
theorem Th156: :: ZF_LANG1:156
for F, H being ZF-formula
for x, y being Variable holds
( 'not' F = ('not' H) / (x,y) iff F = H / (x,y) )
proof
let F, H be ZF-formula; ::_thesis: for x, y being Variable holds
( 'not' F = ('not' H) / (x,y) iff F = H / (x,y) )
let x, y be Variable; ::_thesis: ( 'not' F = ('not' H) / (x,y) iff F = H / (x,y) )
set N = ('not' H) / (x,y);
A1: len <*2*> = 1 by FINSEQ_1:39;
A2: ( dom ('not' F) = Seg (len ('not' F)) & dom ('not' H) = Seg (len ('not' H)) ) by FINSEQ_1:def_3;
A3: ( len ('not' F) = (len <*2*>) + (len F) & len ('not' H) = (len <*2*>) + (len H) ) by FINSEQ_1:22;
A4: ( dom F = Seg (len F) & dom H = Seg (len H) ) by FINSEQ_1:def_3;
thus ( 'not' F = ('not' H) / (x,y) implies F = H / (x,y) ) ::_thesis: ( F = H / (x,y) implies 'not' F = ('not' H) / (x,y) )
proof
assume A5: 'not' F = ('not' H) / (x,y) ; ::_thesis: F = H / (x,y)
then A6: dom ('not' F) = dom ('not' H) by Def3;
then A7: len ('not' F) = len ('not' H) by FINSEQ_3:29;
A8: now__::_thesis:_for_a_being_set_st_a_in_dom_F_holds_
F_._a_=_(H_/_(x,y))_._a
let a be set ; ::_thesis: ( a in dom F implies F . a = (H / (x,y)) . a )
assume A9: a in dom F ; ::_thesis: F . a = (H / (x,y)) . a
then reconsider i = a as Element of NAT ;
A10: ( F . a = (('not' H) / (x,y)) . (1 + i) & 1 + i in dom (('not' H) / (x,y)) ) by A1, A5, A9, FINSEQ_1:28, FINSEQ_1:def_7;
A11: ('not' H) . (1 + i) = H . a by A1, A4, A3, A7, A9, FINSEQ_1:def_7;
then A12: ( H . a = x implies F . a = y ) by A5, A6, A10, Def3;
A13: ( H . a <> x implies F . a = H . a ) by A5, A6, A10, A11, Def3;
( H . a = x implies (H / (x,y)) . a = y ) by A4, A3, A7, A9, Def3;
hence F . a = (H / (x,y)) . a by A4, A3, A7, A9, A12, A13, Def3; ::_thesis: verum
end;
A14: dom H = dom (H / (x,y)) by Def3;
dom F = dom H by A3, A7, FINSEQ_3:29;
hence F = H / (x,y) by A14, A8, FUNCT_1:2; ::_thesis: verum
end;
assume A15: F = H / (x,y) ; ::_thesis: 'not' F = ('not' H) / (x,y)
then A16: dom F = dom H by Def3;
then A17: len F = len H by FINSEQ_3:29;
A18: dom <*2*> = {1} by FINSEQ_1:2, FINSEQ_1:def_8;
A19: now__::_thesis:_for_a_being_set_st_a_in_dom_('not'_F)_holds_
('not'_F)_._a_=_(('not'_H)_/_(x,y))_._a
let a be set ; ::_thesis: ( a in dom ('not' F) implies ('not' F) . a = (('not' H) / (x,y)) . a )
assume A20: a in dom ('not' F) ; ::_thesis: ('not' F) . a = (('not' H) / (x,y)) . a
then reconsider i = a as Element of NAT ;
A21: now__::_thesis:_(_ex_j_being_Nat_st_
(_j_in_dom_F_&_i_=_1_+_j_)_implies_('not'_F)_._a_=_(('not'_H)_/_(x,y))_._a_)
A22: ( ('not' H) . a <> x implies (('not' H) / (x,y)) . a = ('not' H) . a ) by A2, A3, A17, A20, Def3;
given j being Nat such that A23: j in dom F and
A24: i = 1 + j ; ::_thesis: ('not' F) . a = (('not' H) / (x,y)) . a
A25: ( H . j = ('not' H) . i & F . j = ('not' F) . i ) by A1, A16, A23, A24, FINSEQ_1:def_7;
then A26: ( ('not' H) . a = x implies ('not' F) . a = y ) by A15, A16, A23, Def3;
( ('not' H) . a <> x implies ('not' F) . a = ('not' H) . a ) by A15, A16, A23, A25, Def3;
hence ('not' F) . a = (('not' H) / (x,y)) . a by A2, A3, A17, A20, A26, A22, Def3; ::_thesis: verum
end;
now__::_thesis:_(_i_in_{1}_implies_('not'_F)_._a_=_(('not'_H)_/_(x,y))_._a_)
A27: ( ('not' H) . 1 = 2 & 2 <> x ) by Th135, FINSEQ_1:41;
assume i in {1} ; ::_thesis: ('not' F) . a = (('not' H) / (x,y)) . a
then A28: i = 1 by TARSKI:def_1;
then ('not' F) . i = 2 by FINSEQ_1:41;
hence ('not' F) . a = (('not' H) / (x,y)) . a by A2, A3, A17, A20, A28, A27, Def3; ::_thesis: verum
end;
hence ('not' F) . a = (('not' H) / (x,y)) . a by A1, A18, A20, A21, FINSEQ_1:25; ::_thesis: verum
end;
dom ('not' F) = dom (('not' H) / (x,y)) by A2, A3, A17, Def3;
hence 'not' F = ('not' H) / (x,y) by A19, FUNCT_1:2; ::_thesis: verum
end;
Lm1: for G1, H1, G2, H2 being ZF-formula
for x, y being Variable st G1 = H1 / (x,y) & G2 = H2 / (x,y) holds
G1 '&' G2 = (H1 '&' H2) / (x,y)
proof
let G1, H1, G2, H2 be ZF-formula; ::_thesis: for x, y being Variable st G1 = H1 / (x,y) & G2 = H2 / (x,y) holds
G1 '&' G2 = (H1 '&' H2) / (x,y)
let x, y be Variable; ::_thesis: ( G1 = H1 / (x,y) & G2 = H2 / (x,y) implies G1 '&' G2 = (H1 '&' H2) / (x,y) )
set N = (H1 '&' H2) / (x,y);
A1: dom <*3*> = {1} by FINSEQ_1:2, FINSEQ_1:def_8;
A2: ( dom (G1 '&' G2) = Seg (len (G1 '&' G2)) & dom (H1 '&' H2) = Seg (len (H1 '&' H2)) ) by FINSEQ_1:def_3;
A3: len <*3*> = 1 by FINSEQ_1:39;
then A4: len (<*3*> ^ G1) = 1 + (len G1) by FINSEQ_1:22;
then A5: len (G1 '&' G2) = (1 + (len G1)) + (len G2) by FINSEQ_1:22;
A6: len (<*3*> ^ H1) = 1 + (len H1) by A3, FINSEQ_1:22;
then A7: len (H1 '&' H2) = (1 + (len H1)) + (len H2) by FINSEQ_1:22;
A8: dom (<*3*> ^ H1) = Seg (1 + (len H1)) by A6, FINSEQ_1:def_3;
A9: dom ((H1 '&' H2) / (x,y)) = dom (H1 '&' H2) by Def3;
assume that
A10: G1 = H1 / (x,y) and
A11: G2 = H2 / (x,y) ; ::_thesis: G1 '&' G2 = (H1 '&' H2) / (x,y)
A12: dom G1 = dom H1 by A10, Def3;
then A13: len G1 = len H1 by FINSEQ_3:29;
A14: dom G2 = dom H2 by A11, Def3;
then len G2 = len H2 by FINSEQ_3:29;
then A15: dom ((H1 '&' H2) / (x,y)) = dom (G1 '&' G2) by A2, A5, A7, A13, Def3;
A16: dom (<*3*> ^ G1) = Seg (1 + (len G1)) by A4, FINSEQ_1:def_3;
now__::_thesis:_for_a_being_set_st_a_in_dom_((H1_'&'_H2)_/_(x,y))_holds_
(G1_'&'_G2)_._a_=_((H1_'&'_H2)_/_(x,y))_._a
let a be set ; ::_thesis: ( a in dom ((H1 '&' H2) / (x,y)) implies (G1 '&' G2) . a = ((H1 '&' H2) / (x,y)) . a )
assume A17: a in dom ((H1 '&' H2) / (x,y)) ; ::_thesis: (G1 '&' G2) . a = ((H1 '&' H2) / (x,y)) . a
then reconsider i = a as Element of NAT by A15;
A18: now__::_thesis:_(_i_in_dom_(<*3*>_^_G1)_implies_(G1_'&'_G2)_._a_=_((H1_'&'_H2)_/_(x,y))_._a_)
A19: now__::_thesis:_(_i_in_{1}_implies_((H1_'&'_H2)_/_(x,y))_._a_=_(G1_'&'_G2)_._a_)
assume i in {1} ; ::_thesis: ((H1 '&' H2) / (x,y)) . a = (G1 '&' G2) . a
then A20: i = 1 by TARSKI:def_1;
( (H1 '&' H2) . 1 = 3 & x <> 3 ) by Th135, ZF_LANG:16;
then ((H1 '&' H2) / (x,y)) . i = 3 by A9, A17, A20, Def3;
hence ((H1 '&' H2) / (x,y)) . a = (G1 '&' G2) . a by A20, ZF_LANG:16; ::_thesis: verum
end;
assume A21: i in dom (<*3*> ^ G1) ; ::_thesis: (G1 '&' G2) . a = ((H1 '&' H2) / (x,y)) . a
then A22: ( (G1 '&' G2) . i = (<*3*> ^ G1) . i & (H1 '&' H2) . i = (<*3*> ^ H1) . i ) by A16, A8, A13, FINSEQ_1:def_7;
now__::_thesis:_(_ex_j_being_Nat_st_
(_j_in_dom_G1_&_i_=_1_+_j_)_implies_(G1_'&'_G2)_._a_=_((H1_'&'_H2)_/_(x,y))_._a_)
A23: ( (H1 '&' H2) . a <> x implies ((H1 '&' H2) / (x,y)) . a = (H1 '&' H2) . a ) by A9, A17, Def3;
given j being Nat such that A24: j in dom G1 and
A25: i = 1 + j ; ::_thesis: (G1 '&' G2) . a = ((H1 '&' H2) / (x,y)) . a
A26: ( G1 . j = (G1 '&' G2) . i & H1 . j = (H1 '&' H2) . i ) by A3, A12, A22, A24, A25, FINSEQ_1:def_7;
then A27: ( (H1 '&' H2) . a = x implies (G1 '&' G2) . a = y ) by A10, A12, A24, Def3;
( (H1 '&' H2) . a <> x implies (G1 '&' G2) . a = (H1 '&' H2) . a ) by A10, A12, A24, A26, Def3;
hence (G1 '&' G2) . a = ((H1 '&' H2) / (x,y)) . a by A9, A17, A27, A23, Def3; ::_thesis: verum
end;
hence (G1 '&' G2) . a = ((H1 '&' H2) / (x,y)) . a by A3, A1, A21, A19, FINSEQ_1:25; ::_thesis: verum
end;
now__::_thesis:_(_ex_j_being_Nat_st_
(_j_in_dom_G2_&_i_=_(1_+_(len_G1))_+_j_)_implies_(G1_'&'_G2)_._a_=_((H1_'&'_H2)_/_(x,y))_._a_)
A28: ( (H1 '&' H2) . a <> x implies ((H1 '&' H2) / (x,y)) . a = (H1 '&' H2) . a ) by A9, A17, Def3;
given j being Nat such that A29: j in dom G2 and
A30: i = (1 + (len G1)) + j ; ::_thesis: (G1 '&' G2) . a = ((H1 '&' H2) / (x,y)) . a
A31: ( G2 . j = (G1 '&' G2) . i & H2 . j = (H1 '&' H2) . i ) by A4, A6, A14, A13, A29, A30, FINSEQ_1:def_7;
then A32: ( (H1 '&' H2) . a = x implies (G1 '&' G2) . a = y ) by A11, A14, A29, Def3;
( (H1 '&' H2) . a <> x implies (G1 '&' G2) . a = (H1 '&' H2) . a ) by A11, A14, A29, A31, Def3;
hence (G1 '&' G2) . a = ((H1 '&' H2) / (x,y)) . a by A9, A17, A28, A32, Def3; ::_thesis: verum
end;
hence (G1 '&' G2) . a = ((H1 '&' H2) / (x,y)) . a by A4, A15, A17, A18, FINSEQ_1:25; ::_thesis: verum
end;
hence G1 '&' G2 = (H1 '&' H2) / (x,y) by A15, FUNCT_1:2; ::_thesis: verum
end;
Lm2: for F, H being ZF-formula
for x, y, z, s being Variable st F = H / (x,y) & ( ( z = s & s <> x ) or ( z = y & s = x ) ) holds
All (z,F) = (All (s,H)) / (x,y)
proof
let F, H be ZF-formula; ::_thesis: for x, y, z, s being Variable st F = H / (x,y) & ( ( z = s & s <> x ) or ( z = y & s = x ) ) holds
All (z,F) = (All (s,H)) / (x,y)
let x, y, z, s be Variable; ::_thesis: ( F = H / (x,y) & ( ( z = s & s <> x ) or ( z = y & s = x ) ) implies All (z,F) = (All (s,H)) / (x,y) )
set N = (All (s,H)) / (x,y);
A1: ( len <*4*> = 1 & 1 + 1 = 2 ) by FINSEQ_1:39;
len <*s*> = 1 by FINSEQ_1:39;
then A2: len (<*4*> ^ <*s*>) = 2 by A1, FINSEQ_1:22;
then A3: dom (<*4*> ^ <*s*>) = {1,2} by FINSEQ_1:2, FINSEQ_1:def_3;
len (All (s,H)) = 2 + (len H) by A2, FINSEQ_1:22;
then A4: dom (All (s,H)) = Seg (2 + (len H)) by FINSEQ_1:def_3;
A5: ( <*4*> ^ <*z*> = <*4,z*> & <*4*> ^ <*s*> = <*4,s*> ) by FINSEQ_1:def_9;
A6: dom ((All (s,H)) / (x,y)) = dom (All (s,H)) by Def3;
assume that
A7: F = H / (x,y) and
A8: ( ( z = s & s <> x ) or ( z = y & s = x ) ) ; ::_thesis: All (z,F) = (All (s,H)) / (x,y)
A9: dom F = dom H by A7, Def3;
len <*z*> = 1 by FINSEQ_1:39;
then A10: len (<*4*> ^ <*z*>) = 2 by A1, FINSEQ_1:22;
then A11: dom (<*4*> ^ <*z*>) = {1,2} by FINSEQ_1:2, FINSEQ_1:def_3;
A12: now__::_thesis:_for_a_being_set_st_a_in_dom_((All_(s,H))_/_(x,y))_holds_
(All_(z,F))_._a_=_((All_(s,H))_/_(x,y))_._a
let a be set ; ::_thesis: ( a in dom ((All (s,H)) / (x,y)) implies (All (z,F)) . a = ((All (s,H)) / (x,y)) . a )
assume A13: a in dom ((All (s,H)) / (x,y)) ; ::_thesis: (All (z,F)) . a = ((All (s,H)) / (x,y)) . a
then reconsider a1 = a as Element of NAT by A6;
A14: now__::_thesis:_(_a_in_{1,2}_implies_(All_(z,F))_._a_=_((All_(s,H))_/_(x,y))_._a_)
A15: ( x <> 4 & <*4,z*> . 1 = 4 ) by Th135, FINSEQ_1:44;
A16: ( <*4,s*> . 1 = 4 & <*4,z*> . 2 = z ) by FINSEQ_1:44;
A17: <*4,s*> . 2 = s by FINSEQ_1:44;
assume A18: a in {1,2} ; ::_thesis: (All (z,F)) . a = ((All (s,H)) / (x,y)) . a
then A19: ( a = 1 or a = 2 ) by TARSKI:def_2;
( (All (z,F)) . a1 = <*4,z*> . a1 & (All (s,H)) . a1 = <*4,s*> . a1 ) by A11, A3, A5, A18, FINSEQ_1:def_7;
hence (All (z,F)) . a = ((All (s,H)) / (x,y)) . a by A8, A6, A13, A19, A15, A16, A17, Def3; ::_thesis: verum
end;
now__::_thesis:_(_ex_i_being_Nat_st_
(_i_in_dom_H_&_a1_=_2_+_i_)_implies_(All_(z,F))_._a_=_((All_(s,H))_/_(x,y))_._a_)
A20: ( (All (s,H)) . a <> x implies ((All (s,H)) / (x,y)) . a = (All (s,H)) . a ) by A6, A13, Def3;
given i being Nat such that A21: i in dom H and
A22: a1 = 2 + i ; ::_thesis: (All (z,F)) . a = ((All (s,H)) / (x,y)) . a
A23: ( (All (z,F)) . a = F . i & (All (s,H)) . a = H . i ) by A10, A2, A9, A21, A22, FINSEQ_1:def_7;
then A24: ( (All (s,H)) . a = x implies (All (z,F)) . a = y ) by A7, A21, Def3;
( (All (s,H)) . a <> x implies (All (z,F)) . a = (All (s,H)) . a ) by A7, A21, A23, Def3;
hence (All (z,F)) . a = ((All (s,H)) / (x,y)) . a by A6, A13, A24, A20, Def3; ::_thesis: verum
end;
hence (All (z,F)) . a = ((All (s,H)) / (x,y)) . a by A2, A3, A6, A13, A14, FINSEQ_1:25; ::_thesis: verum
end;
len (All (z,F)) = 2 + (len F) by A10, FINSEQ_1:22;
then dom (All (z,F)) = Seg (2 + (len F)) by FINSEQ_1:def_3;
then dom (All (s,H)) = dom (All (z,F)) by A4, A9, FINSEQ_3:29;
hence All (z,F) = (All (s,H)) / (x,y) by A6, A12, FUNCT_1:2; ::_thesis: verum
end;
theorem Th157: :: ZF_LANG1:157
for H being ZF-formula
for x, y being Variable holds H / (x,y) in WFF
proof
let H be ZF-formula; ::_thesis: for x, y being Variable holds H / (x,y) in WFF
let x, y be Variable; ::_thesis: H / (x,y) in WFF
defpred S1[ ZF-formula] means $1 / (x,y) in WFF ;
A1: for H being ZF-formula st S1[H] holds
S1[ 'not' H]
proof
let H be ZF-formula; ::_thesis: ( S1[H] implies S1[ 'not' H] )
assume H / (x,y) in WFF ; ::_thesis: S1[ 'not' H]
then reconsider F = H / (x,y) as ZF-formula by ZF_LANG:4;
'not' F = ('not' H) / (x,y) by Th156;
hence S1[ 'not' H] by ZF_LANG:4; ::_thesis: verum
end;
A2: for H1, H2 being ZF-formula st S1[H1] & S1[H2] holds
S1[H1 '&' H2]
proof
let H1, H2 be ZF-formula; ::_thesis: ( S1[H1] & S1[H2] implies S1[H1 '&' H2] )
assume ( H1 / (x,y) in WFF & H2 / (x,y) in WFF ) ; ::_thesis: S1[H1 '&' H2]
then reconsider F1 = H1 / (x,y), F2 = H2 / (x,y) as ZF-formula by ZF_LANG:4;
F1 '&' F2 = (H1 '&' H2) / (x,y) by Lm1;
hence S1[H1 '&' H2] by ZF_LANG:4; ::_thesis: verum
end;
A3: for H being ZF-formula
for z being Variable st S1[H] holds
S1[ All (z,H)]
proof
let H be ZF-formula; ::_thesis: for z being Variable st S1[H] holds
S1[ All (z,H)]
let z be Variable; ::_thesis: ( S1[H] implies S1[ All (z,H)] )
assume H / (x,y) in WFF ; ::_thesis: S1[ All (z,H)]
then reconsider F = H / (x,y) as ZF-formula by ZF_LANG:4;
( z <> x or z = x ) ;
then consider s being Variable such that
A4: ( ( s = z & z <> x ) or ( s = y & z = x ) ) ;
All (s,F) = (All (z,H)) / (x,y) by A4, Lm2;
hence S1[ All (z,H)] by ZF_LANG:4; ::_thesis: verum
end;
A5: for x1, x2 being Variable holds
( S1[x1 '=' x2] & S1[x1 'in' x2] )
proof
let x1, x2 be Variable; ::_thesis: ( S1[x1 '=' x2] & S1[x1 'in' x2] )
( ex y1, y2 being Variable st (x1 '=' x2) / (x,y) = y1 '=' y2 & ex z1, z2 being Variable st (x1 'in' x2) / (x,y) = z1 'in' z2 ) by Th153, Th155;
hence ( S1[x1 '=' x2] & S1[x1 'in' x2] ) by ZF_LANG:4; ::_thesis: verum
end;
for H being ZF-formula holds S1[H] from ZF_LANG1:sch_1(A5, A1, A2, A3);
hence H / (x,y) in WFF ; ::_thesis: verum
end;
definition
let H be ZF-formula;
let x, y be Variable;
:: original: /
redefine funcH / (x,y) -> ZF-formula;
coherence
H / (x,y) is ZF-formula
proof
A1: dom (H / (x,y)) = dom H by Def3;
dom H = Seg (len H) by FINSEQ_1:def_3;
then reconsider f = H / (x,y) as FinSequence by A1, FINSEQ_1:def_2;
A2: for a being set st a in dom H holds
( ( H . a = x implies (H / (x,y)) . a = y ) & ( H . a <> x implies (H / (x,y)) . a = H . a ) ) by Def3;
rng f c= NAT
proof
let a be set ; :: according to TARSKI:def_3 ::_thesis: ( not a in rng f or a in NAT )
assume a in rng f ; ::_thesis: a in NAT
then consider b being set such that
A3: b in dom f and
A4: a = f . b by FUNCT_1:def_3;
( rng H c= NAT & H . b in rng H ) by A1, A3, FINSEQ_1:def_4, FUNCT_1:def_3;
then ( a = y or ( a = H . b & H . b in NAT ) ) by A1, A2, A3, A4;
hence a in NAT ; ::_thesis: verum
end;
then reconsider f = f as FinSequence of NAT by FINSEQ_1:def_4;
f in WFF by Th157;
hence H / (x,y) is ZF-formula by ZF_LANG:4; ::_thesis: verum
end;
end;
theorem Th158: :: ZF_LANG1:158
for G1, G2, H1, H2 being ZF-formula
for x, y being Variable holds
( G1 '&' G2 = (H1 '&' H2) / (x,y) iff ( G1 = H1 / (x,y) & G2 = H2 / (x,y) ) )
proof
let G1, G2, H1, H2 be ZF-formula; ::_thesis: for x, y being Variable holds
( G1 '&' G2 = (H1 '&' H2) / (x,y) iff ( G1 = H1 / (x,y) & G2 = H2 / (x,y) ) )
let x, y be Variable; ::_thesis: ( G1 '&' G2 = (H1 '&' H2) / (x,y) iff ( G1 = H1 / (x,y) & G2 = H2 / (x,y) ) )
thus ( G1 '&' G2 = (H1 '&' H2) / (x,y) implies ( G1 = H1 / (x,y) & G2 = H2 / (x,y) ) ) ::_thesis: ( G1 = H1 / (x,y) & G2 = H2 / (x,y) implies G1 '&' G2 = (H1 '&' H2) / (x,y) )
proof
assume G1 '&' G2 = (H1 '&' H2) / (x,y) ; ::_thesis: ( G1 = H1 / (x,y) & G2 = H2 / (x,y) )
then G1 '&' G2 = (H1 / (x,y)) '&' (H2 / (x,y)) by Lm1;
hence ( G1 = H1 / (x,y) & G2 = H2 / (x,y) ) by ZF_LANG:30; ::_thesis: verum
end;
thus ( G1 = H1 / (x,y) & G2 = H2 / (x,y) implies G1 '&' G2 = (H1 '&' H2) / (x,y) ) by Lm1; ::_thesis: verum
end;
theorem Th159: :: ZF_LANG1:159
for G, H being ZF-formula
for z, x, y being Variable st z <> x holds
( All (z,G) = (All (z,H)) / (x,y) iff G = H / (x,y) )
proof
let G, H be ZF-formula; ::_thesis: for z, x, y being Variable st z <> x holds
( All (z,G) = (All (z,H)) / (x,y) iff G = H / (x,y) )
let z, x, y be Variable; ::_thesis: ( z <> x implies ( All (z,G) = (All (z,H)) / (x,y) iff G = H / (x,y) ) )
assume A1: z <> x ; ::_thesis: ( All (z,G) = (All (z,H)) / (x,y) iff G = H / (x,y) )
thus ( All (z,G) = (All (z,H)) / (x,y) implies G = H / (x,y) ) ::_thesis: ( G = H / (x,y) implies All (z,G) = (All (z,H)) / (x,y) )
proof
assume All (z,G) = (All (z,H)) / (x,y) ; ::_thesis: G = H / (x,y)
then All (z,G) = All (z,(H / (x,y))) by A1, Lm2;
hence G = H / (x,y) by ZF_LANG:3; ::_thesis: verum
end;
thus ( G = H / (x,y) implies All (z,G) = (All (z,H)) / (x,y) ) by A1, Lm2; ::_thesis: verum
end;
theorem Th160: :: ZF_LANG1:160
for G, H being ZF-formula
for y, x being Variable holds
( All (y,G) = (All (x,H)) / (x,y) iff G = H / (x,y) )
proof
let G, H be ZF-formula; ::_thesis: for y, x being Variable holds
( All (y,G) = (All (x,H)) / (x,y) iff G = H / (x,y) )
let y, x be Variable; ::_thesis: ( All (y,G) = (All (x,H)) / (x,y) iff G = H / (x,y) )
thus ( All (y,G) = (All (x,H)) / (x,y) implies G = H / (x,y) ) ::_thesis: ( G = H / (x,y) implies All (y,G) = (All (x,H)) / (x,y) )
proof
assume All (y,G) = (All (x,H)) / (x,y) ; ::_thesis: G = H / (x,y)
then All (y,G) = All (y,(H / (x,y))) by Lm2;
hence G = H / (x,y) by ZF_LANG:3; ::_thesis: verum
end;
thus ( G = H / (x,y) implies All (y,G) = (All (x,H)) / (x,y) ) by Lm2; ::_thesis: verum
end;
theorem Th161: :: ZF_LANG1:161
for G1, G2, H1, H2 being ZF-formula
for x, y being Variable holds
( G1 'or' G2 = (H1 'or' H2) / (x,y) iff ( G1 = H1 / (x,y) & G2 = H2 / (x,y) ) )
proof
let G1, G2, H1, H2 be ZF-formula; ::_thesis: for x, y being Variable holds
( G1 'or' G2 = (H1 'or' H2) / (x,y) iff ( G1 = H1 / (x,y) & G2 = H2 / (x,y) ) )
let x, y be Variable; ::_thesis: ( G1 'or' G2 = (H1 'or' H2) / (x,y) iff ( G1 = H1 / (x,y) & G2 = H2 / (x,y) ) )
( ( 'not' G1 = ('not' H1) / (x,y) & 'not' G2 = ('not' H2) / (x,y) ) iff ('not' G1) '&' ('not' G2) = (('not' H1) '&' ('not' H2)) / (x,y) ) by Th158;
hence ( G1 'or' G2 = (H1 'or' H2) / (x,y) iff ( G1 = H1 / (x,y) & G2 = H2 / (x,y) ) ) by Th156; ::_thesis: verum
end;
theorem Th162: :: ZF_LANG1:162
for G1, G2, H1, H2 being ZF-formula
for x, y being Variable holds
( G1 => G2 = (H1 => H2) / (x,y) iff ( G1 = H1 / (x,y) & G2 = H2 / (x,y) ) )
proof
let G1, G2, H1, H2 be ZF-formula; ::_thesis: for x, y being Variable holds
( G1 => G2 = (H1 => H2) / (x,y) iff ( G1 = H1 / (x,y) & G2 = H2 / (x,y) ) )
let x, y be Variable; ::_thesis: ( G1 => G2 = (H1 => H2) / (x,y) iff ( G1 = H1 / (x,y) & G2 = H2 / (x,y) ) )
( ( G1 = H1 / (x,y) & 'not' G2 = ('not' H2) / (x,y) ) iff G1 '&' ('not' G2) = (H1 '&' ('not' H2)) / (x,y) ) by Th158;
hence ( G1 => G2 = (H1 => H2) / (x,y) iff ( G1 = H1 / (x,y) & G2 = H2 / (x,y) ) ) by Th156; ::_thesis: verum
end;
theorem Th163: :: ZF_LANG1:163
for G1, G2, H1, H2 being ZF-formula
for x, y being Variable holds
( G1 <=> G2 = (H1 <=> H2) / (x,y) iff ( G1 = H1 / (x,y) & G2 = H2 / (x,y) ) )
proof
let G1, G2, H1, H2 be ZF-formula; ::_thesis: for x, y being Variable holds
( G1 <=> G2 = (H1 <=> H2) / (x,y) iff ( G1 = H1 / (x,y) & G2 = H2 / (x,y) ) )
let x, y be Variable; ::_thesis: ( G1 <=> G2 = (H1 <=> H2) / (x,y) iff ( G1 = H1 / (x,y) & G2 = H2 / (x,y) ) )
( G1 <=> G2 = (H1 <=> H2) / (x,y) iff ( G1 => G2 = (H1 => H2) / (x,y) & G2 => G1 = (H2 => H1) / (x,y) ) ) by Th158;
hence ( G1 <=> G2 = (H1 <=> H2) / (x,y) iff ( G1 = H1 / (x,y) & G2 = H2 / (x,y) ) ) by Th162; ::_thesis: verum
end;
theorem Th164: :: ZF_LANG1:164
for G, H being ZF-formula
for z, x, y being Variable st z <> x holds
( Ex (z,G) = (Ex (z,H)) / (x,y) iff G = H / (x,y) )
proof
let G, H be ZF-formula; ::_thesis: for z, x, y being Variable st z <> x holds
( Ex (z,G) = (Ex (z,H)) / (x,y) iff G = H / (x,y) )
let z, x, y be Variable; ::_thesis: ( z <> x implies ( Ex (z,G) = (Ex (z,H)) / (x,y) iff G = H / (x,y) ) )
assume z <> x ; ::_thesis: ( Ex (z,G) = (Ex (z,H)) / (x,y) iff G = H / (x,y) )
then ( 'not' G = ('not' H) / (x,y) iff All (z,('not' G)) = (All (z,('not' H))) / (x,y) ) by Th159;
hence ( Ex (z,G) = (Ex (z,H)) / (x,y) iff G = H / (x,y) ) by Th156; ::_thesis: verum
end;
theorem Th165: :: ZF_LANG1:165
for G, H being ZF-formula
for y, x being Variable holds
( Ex (y,G) = (Ex (x,H)) / (x,y) iff G = H / (x,y) )
proof
let G, H be ZF-formula; ::_thesis: for y, x being Variable holds
( Ex (y,G) = (Ex (x,H)) / (x,y) iff G = H / (x,y) )
let y, x be Variable; ::_thesis: ( Ex (y,G) = (Ex (x,H)) / (x,y) iff G = H / (x,y) )
( 'not' G = ('not' H) / (x,y) iff All (y,('not' G)) = (All (x,('not' H))) / (x,y) ) by Th160;
hence ( Ex (y,G) = (Ex (x,H)) / (x,y) iff G = H / (x,y) ) by Th156; ::_thesis: verum
end;
theorem :: ZF_LANG1:166
for H being ZF-formula
for x, y being Variable holds
( H is being_equality iff H / (x,y) is being_equality )
proof
let H be ZF-formula; ::_thesis: for x, y being Variable holds
( H is being_equality iff H / (x,y) is being_equality )
let x, y be Variable; ::_thesis: ( H is being_equality iff H / (x,y) is being_equality )
thus ( H is being_equality implies H / (x,y) is being_equality ) ::_thesis: ( H / (x,y) is being_equality implies H is being_equality )
proof
given x1, x2 being Variable such that A1: H = x1 '=' x2 ; :: according to ZF_LANG:def_10 ::_thesis: H / (x,y) is being_equality
ex z1, z2 being Variable st H / (x,y) = z1 '=' z2 by A1, Th153;
hence H / (x,y) is being_equality by ZF_LANG:5; ::_thesis: verum
end;
assume H / (x,y) is being_equality ; ::_thesis: H is being_equality
then A2: (H / (x,y)) . 1 = 0 by ZF_LANG:18;
3 <= len H by ZF_LANG:13;
then 1 <= len H by XXREAL_0:2;
then A3: 1 in dom H by FINSEQ_3:25;
y <> 0 by Th135;
then H . 1 <> x by A2, A3, Def3;
then 0 = H . 1 by A2, A3, Def3;
hence H is being_equality by ZF_LANG:24; ::_thesis: verum
end;
theorem :: ZF_LANG1:167
for H being ZF-formula
for x, y being Variable holds
( H is being_membership iff H / (x,y) is being_membership )
proof
let H be ZF-formula; ::_thesis: for x, y being Variable holds
( H is being_membership iff H / (x,y) is being_membership )
let x, y be Variable; ::_thesis: ( H is being_membership iff H / (x,y) is being_membership )
thus ( H is being_membership implies H / (x,y) is being_membership ) ::_thesis: ( H / (x,y) is being_membership implies H is being_membership )
proof
given x1, x2 being Variable such that A1: H = x1 'in' x2 ; :: according to ZF_LANG:def_11 ::_thesis: H / (x,y) is being_membership
ex z1, z2 being Variable st H / (x,y) = z1 'in' z2 by A1, Th155;
hence H / (x,y) is being_membership by ZF_LANG:5; ::_thesis: verum
end;
assume H / (x,y) is being_membership ; ::_thesis: H is being_membership
then A2: (H / (x,y)) . 1 = 1 by ZF_LANG:19;
3 <= len H by ZF_LANG:13;
then 1 <= len H by XXREAL_0:2;
then A3: 1 in dom H by FINSEQ_3:25;
y <> 1 by Th135;
then H . 1 <> x by A2, A3, Def3;
then 1 = H . 1 by A2, A3, Def3;
hence H is being_membership by ZF_LANG:25; ::_thesis: verum
end;
theorem Th168: :: ZF_LANG1:168
for H being ZF-formula
for x, y being Variable holds
( H is negative iff H / (x,y) is negative )
proof
let H be ZF-formula; ::_thesis: for x, y being Variable holds
( H is negative iff H / (x,y) is negative )
let x, y be Variable; ::_thesis: ( H is negative iff H / (x,y) is negative )
thus ( H is negative implies H / (x,y) is negative ) ::_thesis: ( H / (x,y) is negative implies H is negative )
proof
given H1 being ZF-formula such that A1: H = 'not' H1 ; :: according to ZF_LANG:def_12 ::_thesis: H / (x,y) is negative
H / (x,y) = 'not' (H1 / (x,y)) by A1, Th156;
hence H / (x,y) is negative by ZF_LANG:5; ::_thesis: verum
end;
assume H / (x,y) is negative ; ::_thesis: H is negative
then A2: (H / (x,y)) . 1 = 2 by ZF_LANG:20;
3 <= len H by ZF_LANG:13;
then 1 <= len H by XXREAL_0:2;
then A3: 1 in dom H by FINSEQ_3:25;
y <> 2 by Th135;
then H . 1 <> x by A2, A3, Def3;
then 2 = H . 1 by A2, A3, Def3;
hence H is negative by ZF_LANG:26; ::_thesis: verum
end;
theorem Th169: :: ZF_LANG1:169
for H being ZF-formula
for x, y being Variable holds
( H is conjunctive iff H / (x,y) is conjunctive )
proof
let H be ZF-formula; ::_thesis: for x, y being Variable holds
( H is conjunctive iff H / (x,y) is conjunctive )
let x, y be Variable; ::_thesis: ( H is conjunctive iff H / (x,y) is conjunctive )
thus ( H is conjunctive implies H / (x,y) is conjunctive ) ::_thesis: ( H / (x,y) is conjunctive implies H is conjunctive )
proof
given H1, H2 being ZF-formula such that A1: H = H1 '&' H2 ; :: according to ZF_LANG:def_13 ::_thesis: H / (x,y) is conjunctive
H / (x,y) = (H1 / (x,y)) '&' (H2 / (x,y)) by A1, Th158;
hence H / (x,y) is conjunctive by ZF_LANG:5; ::_thesis: verum
end;
assume H / (x,y) is conjunctive ; ::_thesis: H is conjunctive
then A2: (H / (x,y)) . 1 = 3 by ZF_LANG:21;
3 <= len H by ZF_LANG:13;
then 1 <= len H by XXREAL_0:2;
then A3: 1 in dom H by FINSEQ_3:25;
y <> 3 by Th135;
then H . 1 <> x by A2, A3, Def3;
then 3 = H . 1 by A2, A3, Def3;
hence H is conjunctive by ZF_LANG:27; ::_thesis: verum
end;
theorem Th170: :: ZF_LANG1:170
for H being ZF-formula
for x, y being Variable holds
( H is universal iff H / (x,y) is universal )
proof
let H be ZF-formula; ::_thesis: for x, y being Variable holds
( H is universal iff H / (x,y) is universal )
let x, y be Variable; ::_thesis: ( H is universal iff H / (x,y) is universal )
thus ( H is universal implies H / (x,y) is universal ) ::_thesis: ( H / (x,y) is universal implies H is universal )
proof
given z being Variable, H1 being ZF-formula such that A1: H = All (z,H1) ; :: according to ZF_LANG:def_14 ::_thesis: H / (x,y) is universal
( z = x or z <> x ) ;
then consider s being Variable such that
A2: ( ( z = x & s = y ) or ( z <> x & s = z ) ) ;
H / (x,y) = All (s,(H1 / (x,y))) by A1, A2, Th159, Th160;
hence H / (x,y) is universal by ZF_LANG:5; ::_thesis: verum
end;
assume H / (x,y) is universal ; ::_thesis: H is universal
then A3: (H / (x,y)) . 1 = 4 by ZF_LANG:22;
3 <= len H by ZF_LANG:13;
then 1 <= len H by XXREAL_0:2;
then A4: 1 in dom H by FINSEQ_3:25;
y <> 4 by Th135;
then H . 1 <> x by A3, A4, Def3;
then 4 = H . 1 by A3, A4, Def3;
hence H is universal by ZF_LANG:28; ::_thesis: verum
end;
theorem :: ZF_LANG1:171
for H being ZF-formula
for x, y being Variable st H is negative holds
the_argument_of (H / (x,y)) = (the_argument_of H) / (x,y)
proof
let H be ZF-formula; ::_thesis: for x, y being Variable st H is negative holds
the_argument_of (H / (x,y)) = (the_argument_of H) / (x,y)
let x, y be Variable; ::_thesis: ( H is negative implies the_argument_of (H / (x,y)) = (the_argument_of H) / (x,y) )
assume A1: H is negative ; ::_thesis: the_argument_of (H / (x,y)) = (the_argument_of H) / (x,y)
then H / (x,y) is negative by Th168;
then A2: H / (x,y) = 'not' (the_argument_of (H / (x,y))) by ZF_LANG:def_30;
H = 'not' (the_argument_of H) by A1, ZF_LANG:def_30;
hence the_argument_of (H / (x,y)) = (the_argument_of H) / (x,y) by A2, Th156; ::_thesis: verum
end;
theorem :: ZF_LANG1:172
for H being ZF-formula
for x, y being Variable st H is conjunctive holds
( the_left_argument_of (H / (x,y)) = (the_left_argument_of H) / (x,y) & the_right_argument_of (H / (x,y)) = (the_right_argument_of H) / (x,y) )
proof
let H be ZF-formula; ::_thesis: for x, y being Variable st H is conjunctive holds
( the_left_argument_of (H / (x,y)) = (the_left_argument_of H) / (x,y) & the_right_argument_of (H / (x,y)) = (the_right_argument_of H) / (x,y) )
let x, y be Variable; ::_thesis: ( H is conjunctive implies ( the_left_argument_of (H / (x,y)) = (the_left_argument_of H) / (x,y) & the_right_argument_of (H / (x,y)) = (the_right_argument_of H) / (x,y) ) )
assume A1: H is conjunctive ; ::_thesis: ( the_left_argument_of (H / (x,y)) = (the_left_argument_of H) / (x,y) & the_right_argument_of (H / (x,y)) = (the_right_argument_of H) / (x,y) )
then H / (x,y) is conjunctive by Th169;
then A2: H / (x,y) = (the_left_argument_of (H / (x,y))) '&' (the_right_argument_of (H / (x,y))) by ZF_LANG:40;
H = (the_left_argument_of H) '&' (the_right_argument_of H) by A1, ZF_LANG:40;
hence ( the_left_argument_of (H / (x,y)) = (the_left_argument_of H) / (x,y) & the_right_argument_of (H / (x,y)) = (the_right_argument_of H) / (x,y) ) by A2, Th158; ::_thesis: verum
end;
theorem :: ZF_LANG1:173
for H being ZF-formula
for x, y being Variable st H is universal holds
( the_scope_of (H / (x,y)) = (the_scope_of H) / (x,y) & ( bound_in H = x implies bound_in (H / (x,y)) = y ) & ( bound_in H <> x implies bound_in (H / (x,y)) = bound_in H ) )
proof
let H be ZF-formula; ::_thesis: for x, y being Variable st H is universal holds
( the_scope_of (H / (x,y)) = (the_scope_of H) / (x,y) & ( bound_in H = x implies bound_in (H / (x,y)) = y ) & ( bound_in H <> x implies bound_in (H / (x,y)) = bound_in H ) )
let x, y be Variable; ::_thesis: ( H is universal implies ( the_scope_of (H / (x,y)) = (the_scope_of H) / (x,y) & ( bound_in H = x implies bound_in (H / (x,y)) = y ) & ( bound_in H <> x implies bound_in (H / (x,y)) = bound_in H ) ) )
assume A1: H is universal ; ::_thesis: ( the_scope_of (H / (x,y)) = (the_scope_of H) / (x,y) & ( bound_in H = x implies bound_in (H / (x,y)) = y ) & ( bound_in H <> x implies bound_in (H / (x,y)) = bound_in H ) )
then H / (x,y) is universal by Th170;
then A2: H / (x,y) = All ((bound_in (H / (x,y))),(the_scope_of (H / (x,y)))) by ZF_LANG:44;
A3: H = All ((bound_in H),(the_scope_of H)) by A1, ZF_LANG:44;
then A4: ( bound_in H <> x implies H / (x,y) = All ((bound_in H),((the_scope_of H) / (x,y))) ) by Th159;
( bound_in H = x implies H / (x,y) = All (y,((the_scope_of H) / (x,y))) ) by A3, Th160;
hence ( the_scope_of (H / (x,y)) = (the_scope_of H) / (x,y) & ( bound_in H = x implies bound_in (H / (x,y)) = y ) & ( bound_in H <> x implies bound_in (H / (x,y)) = bound_in H ) ) by A2, A4, ZF_LANG:3; ::_thesis: verum
end;
theorem Th174: :: ZF_LANG1:174
for H being ZF-formula
for x, y being Variable holds
( H is disjunctive iff H / (x,y) is disjunctive )
proof
let H be ZF-formula; ::_thesis: for x, y being Variable holds
( H is disjunctive iff H / (x,y) is disjunctive )
let x, y be Variable; ::_thesis: ( H is disjunctive iff H / (x,y) is disjunctive )
set G = H / (x,y);
thus ( H is disjunctive implies H / (x,y) is disjunctive ) ::_thesis: ( H / (x,y) is disjunctive implies H is disjunctive )
proof
given H1, H2 being ZF-formula such that A1: H = H1 'or' H2 ; :: according to ZF_LANG:def_20 ::_thesis: H / (x,y) is disjunctive
H / (x,y) = (H1 / (x,y)) 'or' (H2 / (x,y)) by A1, Th161;
hence H / (x,y) is disjunctive by ZF_LANG:6; ::_thesis: verum
end;
given G1, G2 being ZF-formula such that A2: H / (x,y) = G1 'or' G2 ; :: according to ZF_LANG:def_20 ::_thesis: H is disjunctive
H / (x,y) is negative by A2, ZF_LANG:5;
then H is negative by Th168;
then consider H9 being ZF-formula such that
A3: H = 'not' H9 by ZF_LANG:5;
A4: ('not' G1) '&' ('not' G2) = H9 / (x,y) by A2, A3, Th156;
then H9 / (x,y) is conjunctive by ZF_LANG:5;
then H9 is conjunctive by Th169;
then consider H1, H2 being ZF-formula such that
A5: H9 = H1 '&' H2 by ZF_LANG:5;
'not' G2 = H2 / (x,y) by A4, A5, Th158;
then H2 / (x,y) is negative by ZF_LANG:5;
then H2 is negative by Th168;
then consider p2 being ZF-formula such that
A6: H2 = 'not' p2 by ZF_LANG:5;
'not' G1 = H1 / (x,y) by A4, A5, Th158;
then H1 / (x,y) is negative by ZF_LANG:5;
then H1 is negative by Th168;
then consider p1 being ZF-formula such that
A7: H1 = 'not' p1 by ZF_LANG:5;
H = p1 'or' p2 by A3, A5, A7, A6;
hence H is disjunctive by ZF_LANG:6; ::_thesis: verum
end;
theorem Th175: :: ZF_LANG1:175
for H being ZF-formula
for x, y being Variable holds
( H is conditional iff H / (x,y) is conditional )
proof
let H be ZF-formula; ::_thesis: for x, y being Variable holds
( H is conditional iff H / (x,y) is conditional )
let x, y be Variable; ::_thesis: ( H is conditional iff H / (x,y) is conditional )
set G = H / (x,y);
thus ( H is conditional implies H / (x,y) is conditional ) ::_thesis: ( H / (x,y) is conditional implies H is conditional )
proof
given H1, H2 being ZF-formula such that A1: H = H1 => H2 ; :: according to ZF_LANG:def_21 ::_thesis: H / (x,y) is conditional
H / (x,y) = (H1 / (x,y)) => (H2 / (x,y)) by A1, Th162;
hence H / (x,y) is conditional by ZF_LANG:6; ::_thesis: verum
end;
given G1, G2 being ZF-formula such that A2: H / (x,y) = G1 => G2 ; :: according to ZF_LANG:def_21 ::_thesis: H is conditional
H / (x,y) is negative by A2, ZF_LANG:5;
then H is negative by Th168;
then consider H9 being ZF-formula such that
A3: H = 'not' H9 by ZF_LANG:5;
A4: G1 '&' ('not' G2) = H9 / (x,y) by A2, A3, Th156;
then H9 / (x,y) is conjunctive by ZF_LANG:5;
then H9 is conjunctive by Th169;
then consider H1, H2 being ZF-formula such that
A5: H9 = H1 '&' H2 by ZF_LANG:5;
'not' G2 = H2 / (x,y) by A4, A5, Th158;
then H2 / (x,y) is negative by ZF_LANG:5;
then H2 is negative by Th168;
then consider p2 being ZF-formula such that
A6: H2 = 'not' p2 by ZF_LANG:5;
H = H1 => p2 by A3, A5, A6;
hence H is conditional by ZF_LANG:6; ::_thesis: verum
end;
theorem Th176: :: ZF_LANG1:176
for H being ZF-formula
for x, y being Variable st H is biconditional holds
H / (x,y) is biconditional
proof
let H be ZF-formula; ::_thesis: for x, y being Variable st H is biconditional holds
H / (x,y) is biconditional
let x, y be Variable; ::_thesis: ( H is biconditional implies H / (x,y) is biconditional )
given H1, H2 being ZF-formula such that A1: H = H1 <=> H2 ; :: according to ZF_LANG:def_22 ::_thesis: H / (x,y) is biconditional
H / (x,y) = (H1 / (x,y)) <=> (H2 / (x,y)) by A1, Th163;
hence H / (x,y) is biconditional by ZF_LANG:6; ::_thesis: verum
end;
theorem Th177: :: ZF_LANG1:177
for H being ZF-formula
for x, y being Variable holds
( H is existential iff H / (x,y) is existential )
proof
let H be ZF-formula; ::_thesis: for x, y being Variable holds
( H is existential iff H / (x,y) is existential )
let x, y be Variable; ::_thesis: ( H is existential iff H / (x,y) is existential )
thus ( H is existential implies H / (x,y) is existential ) ::_thesis: ( H / (x,y) is existential implies H is existential )
proof
given z being Variable, H1 being ZF-formula such that A1: H = Ex (z,H1) ; :: according to ZF_LANG:def_23 ::_thesis: H / (x,y) is existential
( z = x or z <> x ) ;
then consider s being Variable such that
A2: ( ( z = x & s = y ) or ( z <> x & s = z ) ) ;
H / (x,y) = Ex (s,(H1 / (x,y))) by A1, A2, Th164, Th165;
hence H / (x,y) is existential by ZF_LANG:6; ::_thesis: verum
end;
given z being Variable, G being ZF-formula such that A3: H / (x,y) = Ex (z,G) ; :: according to ZF_LANG:def_23 ::_thesis: H is existential
H / (x,y) is negative by A3, ZF_LANG:5;
then H is negative by Th168;
then consider H1 being ZF-formula such that
A4: H = 'not' H1 by ZF_LANG:5;
( bound_in H1 = x or bound_in H1 <> x ) ;
then consider s being Variable such that
A5: ( ( bound_in H1 = x & s = y ) or ( bound_in H1 <> x & s = bound_in H1 ) ) ;
A6: H1 / (x,y) = All (z,('not' G)) by A3, A4, Th156;
then H1 / (x,y) is universal by ZF_LANG:5;
then H1 is universal by Th170;
then A7: H1 = All ((bound_in H1),(the_scope_of H1)) by ZF_LANG:44;
then All (z,('not' G)) = All (s,((the_scope_of H1) / (x,y))) by A6, A5, Th159, Th160;
then 'not' G = (the_scope_of H1) / (x,y) by ZF_LANG:3;
then (the_scope_of H1) / (x,y) is negative by ZF_LANG:5;
then the_scope_of H1 is negative by Th168;
then H = Ex ((bound_in H1),(the_argument_of (the_scope_of H1))) by A4, A7, ZF_LANG:def_30;
hence H is existential by ZF_LANG:6; ::_thesis: verum
end;
theorem :: ZF_LANG1:178
for H being ZF-formula
for x, y being Variable st H is disjunctive holds
( the_left_argument_of (H / (x,y)) = (the_left_argument_of H) / (x,y) & the_right_argument_of (H / (x,y)) = (the_right_argument_of H) / (x,y) )
proof
let H be ZF-formula; ::_thesis: for x, y being Variable st H is disjunctive holds
( the_left_argument_of (H / (x,y)) = (the_left_argument_of H) / (x,y) & the_right_argument_of (H / (x,y)) = (the_right_argument_of H) / (x,y) )
let x, y be Variable; ::_thesis: ( H is disjunctive implies ( the_left_argument_of (H / (x,y)) = (the_left_argument_of H) / (x,y) & the_right_argument_of (H / (x,y)) = (the_right_argument_of H) / (x,y) ) )
assume A1: H is disjunctive ; ::_thesis: ( the_left_argument_of (H / (x,y)) = (the_left_argument_of H) / (x,y) & the_right_argument_of (H / (x,y)) = (the_right_argument_of H) / (x,y) )
then H / (x,y) is disjunctive by Th174;
then A2: H / (x,y) = (the_left_argument_of (H / (x,y))) 'or' (the_right_argument_of (H / (x,y))) by ZF_LANG:41;
H = (the_left_argument_of H) 'or' (the_right_argument_of H) by A1, ZF_LANG:41;
hence ( the_left_argument_of (H / (x,y)) = (the_left_argument_of H) / (x,y) & the_right_argument_of (H / (x,y)) = (the_right_argument_of H) / (x,y) ) by A2, Th161; ::_thesis: verum
end;
theorem :: ZF_LANG1:179
for H being ZF-formula
for x, y being Variable st H is conditional holds
( the_antecedent_of (H / (x,y)) = (the_antecedent_of H) / (x,y) & the_consequent_of (H / (x,y)) = (the_consequent_of H) / (x,y) )
proof
let H be ZF-formula; ::_thesis: for x, y being Variable st H is conditional holds
( the_antecedent_of (H / (x,y)) = (the_antecedent_of H) / (x,y) & the_consequent_of (H / (x,y)) = (the_consequent_of H) / (x,y) )
let x, y be Variable; ::_thesis: ( H is conditional implies ( the_antecedent_of (H / (x,y)) = (the_antecedent_of H) / (x,y) & the_consequent_of (H / (x,y)) = (the_consequent_of H) / (x,y) ) )
assume A1: H is conditional ; ::_thesis: ( the_antecedent_of (H / (x,y)) = (the_antecedent_of H) / (x,y) & the_consequent_of (H / (x,y)) = (the_consequent_of H) / (x,y) )
then H / (x,y) is conditional by Th175;
then A2: H / (x,y) = (the_antecedent_of (H / (x,y))) => (the_consequent_of (H / (x,y))) by ZF_LANG:47;
H = (the_antecedent_of H) => (the_consequent_of H) by A1, ZF_LANG:47;
hence ( the_antecedent_of (H / (x,y)) = (the_antecedent_of H) / (x,y) & the_consequent_of (H / (x,y)) = (the_consequent_of H) / (x,y) ) by A2, Th162; ::_thesis: verum
end;
theorem :: ZF_LANG1:180
for H being ZF-formula
for x, y being Variable st H is biconditional holds
( the_left_side_of (H / (x,y)) = (the_left_side_of H) / (x,y) & the_right_side_of (H / (x,y)) = (the_right_side_of H) / (x,y) )
proof
let H be ZF-formula; ::_thesis: for x, y being Variable st H is biconditional holds
( the_left_side_of (H / (x,y)) = (the_left_side_of H) / (x,y) & the_right_side_of (H / (x,y)) = (the_right_side_of H) / (x,y) )
let x, y be Variable; ::_thesis: ( H is biconditional implies ( the_left_side_of (H / (x,y)) = (the_left_side_of H) / (x,y) & the_right_side_of (H / (x,y)) = (the_right_side_of H) / (x,y) ) )
assume H is biconditional ; ::_thesis: ( the_left_side_of (H / (x,y)) = (the_left_side_of H) / (x,y) & the_right_side_of (H / (x,y)) = (the_right_side_of H) / (x,y) )
then ( H = (the_left_side_of H) <=> (the_right_side_of H) & H / (x,y) = (the_left_side_of (H / (x,y))) <=> (the_right_side_of (H / (x,y))) ) by Th176, ZF_LANG:49;
hence ( the_left_side_of (H / (x,y)) = (the_left_side_of H) / (x,y) & the_right_side_of (H / (x,y)) = (the_right_side_of H) / (x,y) ) by Th163; ::_thesis: verum
end;
theorem :: ZF_LANG1:181
for H being ZF-formula
for x, y being Variable st H is existential holds
( the_scope_of (H / (x,y)) = (the_scope_of H) / (x,y) & ( bound_in H = x implies bound_in (H / (x,y)) = y ) & ( bound_in H <> x implies bound_in (H / (x,y)) = bound_in H ) )
proof
let H be ZF-formula; ::_thesis: for x, y being Variable st H is existential holds
( the_scope_of (H / (x,y)) = (the_scope_of H) / (x,y) & ( bound_in H = x implies bound_in (H / (x,y)) = y ) & ( bound_in H <> x implies bound_in (H / (x,y)) = bound_in H ) )
let x, y be Variable; ::_thesis: ( H is existential implies ( the_scope_of (H / (x,y)) = (the_scope_of H) / (x,y) & ( bound_in H = x implies bound_in (H / (x,y)) = y ) & ( bound_in H <> x implies bound_in (H / (x,y)) = bound_in H ) ) )
assume A1: H is existential ; ::_thesis: ( the_scope_of (H / (x,y)) = (the_scope_of H) / (x,y) & ( bound_in H = x implies bound_in (H / (x,y)) = y ) & ( bound_in H <> x implies bound_in (H / (x,y)) = bound_in H ) )
then H / (x,y) is existential by Th177;
then A2: H / (x,y) = Ex ((bound_in (H / (x,y))),(the_scope_of (H / (x,y)))) by ZF_LANG:45;
A3: H = Ex ((bound_in H),(the_scope_of H)) by A1, ZF_LANG:45;
then A4: ( bound_in H <> x implies H / (x,y) = Ex ((bound_in H),((the_scope_of H) / (x,y))) ) by Th164;
( bound_in H = x implies H / (x,y) = Ex (y,((the_scope_of H) / (x,y))) ) by A3, Th165;
hence ( the_scope_of (H / (x,y)) = (the_scope_of H) / (x,y) & ( bound_in H = x implies bound_in (H / (x,y)) = y ) & ( bound_in H <> x implies bound_in (H / (x,y)) = bound_in H ) ) by A2, A4, ZF_LANG:34; ::_thesis: verum
end;
theorem Th182: :: ZF_LANG1:182
for H being ZF-formula
for x, y being Variable st not x in variables_in H holds
H / (x,y) = H
proof
let H be ZF-formula; ::_thesis: for x, y being Variable st not x in variables_in H holds
H / (x,y) = H
let x, y be Variable; ::_thesis: ( not x in variables_in H implies H / (x,y) = H )
assume A1: not x in variables_in H ; ::_thesis: H / (x,y) = H
A2: not x in {0,1,2,3,4} by Th136;
A3: now__::_thesis:_for_a_being_set_st_a_in_dom_H_holds_
(H_/_(x,y))_._a_=_H_._a
let a be set ; ::_thesis: ( a in dom H implies (H / (x,y)) . a = H . a )
assume A4: a in dom H ; ::_thesis: (H / (x,y)) . a = H . a
then A5: H . a in rng H by FUNCT_1:def_3;
( H . a <> x implies (H / (x,y)) . a = H . a ) by A4, Def3;
hence (H / (x,y)) . a = H . a by A1, A2, A5, XBOOLE_0:def_5; ::_thesis: verum
end;
dom H = dom (H / (x,y)) by Def3;
hence H / (x,y) = H by A3, FUNCT_1:2; ::_thesis: verum
end;
theorem :: ZF_LANG1:183
for H being ZF-formula
for x being Variable holds H / (x,x) = H
proof
let H be ZF-formula; ::_thesis: for x being Variable holds H / (x,x) = H
let x be Variable; ::_thesis: H / (x,x) = H
A1: now__::_thesis:_for_a_being_set_st_a_in_dom_H_holds_
H_._a_=_(H_/_(x,x))_._a
let a be set ; ::_thesis: ( a in dom H implies H . a = (H / (x,x)) . a )
assume A2: a in dom H ; ::_thesis: H . a = (H / (x,x)) . a
then ( H . a = x implies (H / (x,x)) . a = x ) by Def3;
hence H . a = (H / (x,x)) . a by A2, Def3; ::_thesis: verum
end;
dom (H / (x,x)) = dom H by Def3;
hence H / (x,x) = H by A1, FUNCT_1:2; ::_thesis: verum
end;
theorem Th184: :: ZF_LANG1:184
for H being ZF-formula
for x, y being Variable st x <> y holds
not x in variables_in (H / (x,y))
proof
let H be ZF-formula; ::_thesis: for x, y being Variable st x <> y holds
not x in variables_in (H / (x,y))
let x, y be Variable; ::_thesis: ( x <> y implies not x in variables_in (H / (x,y)) )
assume A1: x <> y ; ::_thesis: not x in variables_in (H / (x,y))
assume x in variables_in (H / (x,y)) ; ::_thesis: contradiction
then consider a being set such that
A2: a in dom (H / (x,y)) and
A3: x = (H / (x,y)) . a by FUNCT_1:def_3;
A4: dom (H / (x,y)) = dom H by Def3;
then ( H . a = x implies (H / (x,y)) . a = y ) by A2, Def3;
hence contradiction by A1, A2, A3, A4, Def3; ::_thesis: verum
end;
theorem :: ZF_LANG1:185
for H being ZF-formula
for x, y being Variable st x in variables_in H holds
y in variables_in (H / (x,y))
proof
let H be ZF-formula; ::_thesis: for x, y being Variable st x in variables_in H holds
y in variables_in (H / (x,y))
let x, y be Variable; ::_thesis: ( x in variables_in H implies y in variables_in (H / (x,y)) )
assume x in variables_in H ; ::_thesis: y in variables_in (H / (x,y))
then consider a being set such that
A1: a in dom H and
A2: x = H . a by FUNCT_1:def_3;
A3: dom (H / (x,y)) = dom H by Def3;
A4: not y in {0,1,2,3,4} by Th136;
(H / (x,y)) . a = y by A1, A2, Def3;
then y in rng (H / (x,y)) by A1, A3, FUNCT_1:def_3;
hence y in variables_in (H / (x,y)) by A4, XBOOLE_0:def_5; ::_thesis: verum
end;
theorem :: ZF_LANG1:186
for H being ZF-formula
for x, y, z being Variable st x <> y holds
(H / (x,y)) / (x,z) = H / (x,y)
proof
let H be ZF-formula; ::_thesis: for x, y, z being Variable st x <> y holds
(H / (x,y)) / (x,z) = H / (x,y)
let x, y, z be Variable; ::_thesis: ( x <> y implies (H / (x,y)) / (x,z) = H / (x,y) )
assume x <> y ; ::_thesis: (H / (x,y)) / (x,z) = H / (x,y)
then not x in variables_in (H / (x,y)) by Th184;
hence (H / (x,y)) / (x,z) = H / (x,y) by Th182; ::_thesis: verum
end;
theorem :: ZF_LANG1:187
for H being ZF-formula
for x, y being Variable holds variables_in (H / (x,y)) c= ((variables_in H) \ {x}) \/ {y}
proof
let H be ZF-formula; ::_thesis: for x, y being Variable holds variables_in (H / (x,y)) c= ((variables_in H) \ {x}) \/ {y}
let x, y be Variable; ::_thesis: variables_in (H / (x,y)) c= ((variables_in H) \ {x}) \/ {y}
let a be set ; :: according to TARSKI:def_3 ::_thesis: ( not a in variables_in (H / (x,y)) or a in ((variables_in H) \ {x}) \/ {y} )
assume A1: a in variables_in (H / (x,y)) ; ::_thesis: a in ((variables_in H) \ {x}) \/ {y}
then reconsider z = a as Variable ;
consider b being set such that
A2: b in dom (H / (x,y)) and
A3: z = (H / (x,y)) . b by A1, FUNCT_1:def_3;
A4: dom (H / (x,y)) = dom H by Def3;
then A5: ( H . b <> x implies z = H . b ) by A2, A3, Def3;
( H . b = x implies z = y ) by A2, A3, A4, Def3;
then ( z in {y} or ( z in rng H & not z in {0,1,2,3,4} & not z in {x} ) ) by A2, A4, A5, Th136, FUNCT_1:def_3, TARSKI:def_1;
then ( z in {y} or ( z in (rng H) \ {0,1,2,3,4} & not z in {x} ) ) by XBOOLE_0:def_5;
then ( z in {y} or z in (variables_in H) \ {x} ) by XBOOLE_0:def_5;
hence a in ((variables_in H) \ {x}) \/ {y} by XBOOLE_0:def_3; ::_thesis: verum
end;