let V, C be set ; for A, B, D being Element of Fin (PFuncs (V,C)) st A c= B holds
A ^ D c= B ^ D
let A, B, D be Element of Fin (PFuncs (V,C)); ( A c= B implies A ^ D c= B ^ D )
deffunc H1( Element of PFuncs (V,C), Element of PFuncs (V,C)) -> set = $1 \/ $2;
defpred S1[ Function, Function] means ( $1 in A & $2 in D & $1 tolerates $2 );
defpred S2[ Function, Function] means ( $1 in B & $2 in D & $1 tolerates $2 );
set X1 = { H1(s,t) where s, t is Element of PFuncs (V,C) : S1[s,t] } ;
set X2 = { H1(s,t) where s, t is Element of PFuncs (V,C) : S2[s,t] } ;
assume
A c= B
; A ^ D c= B ^ D
then A1:
for s, t being Element of PFuncs (V,C) st S1[s,t] holds
S2[s,t]
;
{ H1(s,t) where s, t is Element of PFuncs (V,C) : S1[s,t] } c= { H1(s,t) where s, t is Element of PFuncs (V,C) : S2[s,t] }
from FRAENKEL:sch 2(A1);
hence
A ^ D c= B ^ D
; verum