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 x, y being Variable holds
( S1[x '=' y] & S1[x 'in' y] )
A2:
for H1 being ZF-formula st S1[H1] holds
S1[ 'not' H1]
A3:
for H1, H2 being ZF-formula st S1[H1] & S1[H2] holds
S1[H1 '&' H2]
A4:
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] )
assume A5:
Free H1 c= variables_in H1
;
:: thesis: S1[ All x,H1]
(
(Free H1) \ {x} c= Free H1 &
variables_in H1 c= (variables_in H1) \/ {x} )
by XBOOLE_1:7, XBOOLE_1:36;
then A6:
(
Free (All x,H1) c= Free H1 &
variables_in H1 c= variables_in (All x,H1) )
by Th67, Th155;
then
Free H1 c= variables_in (All x,H1)
by A5, XBOOLE_1:1;
hence
S1[
All x,
H1]
by A6, XBOOLE_1:1;
:: thesis: verum
end;
for H being ZF-formula holds S1[H]
from ZF_LANG1:sch 1(A1, A2, A3, A4);
hence
Free H c= variables_in H
; :: thesis: verum