defpred S1[ set ] means ( $1 in F3() implies P1[$1] );
A3: now :: thesis: for s being SortSymbol of F1()
for x being Element of F2() . s holds S1[x -term ]
let s be SortSymbol of F1(); :: thesis: for x being Element of F2() . s holds S1[x -term ]
let x be Element of F2() . s; :: thesis: S1[x -term ]
x -term in F3() by Th24;
hence S1[x -term ] by A1; :: thesis: verum
end;
A4: now :: thesis: for o being OperSymbol of F1()
for p being Element of Args (o,(Free (F1(),F2()))) st ( for t being Element of (Free (F1(),F2())) st t in rng p holds
S1[t] ) holds
S1[o -term p]
let o be OperSymbol of F1(); :: thesis: for p being Element of Args (o,(Free (F1(),F2()))) st ( for t being Element of (Free (F1(),F2())) st t in rng p holds
S1[t] ) holds
S1[o -term p]

let p be Element of Args (o,(Free (F1(),F2()))); :: thesis: ( ( for t being Element of (Free (F1(),F2())) st t in rng p holds
S1[t] ) implies S1[o -term p] )

assume A5: for t being Element of (Free (F1(),F2())) st t in rng p holds
S1[t] ; :: thesis: S1[o -term p]
thus S1[o -term p] :: thesis: verum
proof
assume A7: o -term p in F3() ; :: thesis: P1[o -term p]
now :: thesis: for t being Element of F3() st t in rng p holds
P1[t]
let t be Element of F3(); :: thesis: ( t in rng p implies P1[t] )
assume AA: t in rng p ; :: thesis: P1[t]
( t in F3() & S1[ @ t] ) by A5, AA;
hence P1[t] ; :: thesis: verum
end;
hence P1[o -term p] by A2, A7; :: thesis: verum
end;
end;
S1[ @ F4()] from MSAFREE5:sch 2(A3, A4);
hence P1[F4()] by ELEM; :: thesis: verum