let s1, s2 be boolean-valued Function; :: thesis: ( dom s1 = (dom p) /\ (dom q) & ( for x being object st x in dom s1 holds
s1 . x = (p . x) '&' (q . x) ) & dom s2 = (dom p) /\ (dom q) & ( for x being object st x in dom s2 holds
s2 . x = (p . x) '&' (q . x) ) implies s1 = s2 )

assume that
A17: dom s1 = (dom p) /\ (dom q) and
A18: for x being object st x in dom s1 holds
s1 . x = (p . x) '&' (q . x) and
A19: dom s2 = (dom p) /\ (dom q) and
A20: for x being object st x in dom s2 holds
s2 . x = (p . x) '&' (q . x) ; :: thesis: s1 = s2
for x being object st x in dom s1 holds
s1 . x = s2 . x
proof
let x be object ; :: thesis: ( x in dom s1 implies s1 . x = s2 . x )
assume A21: x in dom s1 ; :: thesis: s1 . x = s2 . x
then s1 . x = (p . x) '&' (q . x) by A18;
hence s1 . x = s2 . x by A17, A19, A20, A21; :: thesis: verum
end;
hence s1 = s2 by A17, A19; :: thesis: verum