let A be QC-alphabet ; :: thesis: for p, q being Element of CQC-WFF A holds

( ('not' ('not' p)) => q is valid iff p => q is valid )

let p, q be Element of CQC-WFF A; :: thesis: ( ('not' ('not' p)) => q is valid iff p => q is valid )

thus ( ('not' ('not' p)) => q is valid implies p => q is valid ) :: thesis: ( p => q is valid implies ('not' ('not' p)) => q is valid )

('not' ('not' p)) => p is valid ;

hence ('not' ('not' p)) => q is valid by A2, Th42; :: thesis: verum

( ('not' ('not' p)) => q is valid iff p => q is valid )

let p, q be Element of CQC-WFF A; :: thesis: ( ('not' ('not' p)) => q is valid iff p => q is valid )

thus ( ('not' ('not' p)) => q is valid implies p => q is valid ) :: thesis: ( p => q is valid implies ('not' ('not' p)) => q is valid )

proof

assume A2:
p => q is valid
; :: thesis: ('not' ('not' p)) => q is valid
assume A1:
('not' ('not' p)) => q is valid
; :: thesis: p => q is valid

(('not' ('not' p)) => q) => (p => q) is valid ;

hence p => q is valid by A1, CQC_THE1:65; :: thesis: verum

end;(('not' ('not' p)) => q) => (p => q) is valid ;

hence p => q is valid by A1, CQC_THE1:65; :: thesis: verum

('not' ('not' p)) => p is valid ;

hence ('not' ('not' p)) => q is valid by A2, Th42; :: thesis: verum