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

( p => q in TAUT A iff p => ('not' ('not' q)) in TAUT A )

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

thus ( p => q in TAUT A implies p => ('not' ('not' q)) in TAUT A ) :: thesis: ( p => ('not' ('not' q)) in TAUT A implies p => q in TAUT A )

(p => ('not' ('not' q))) => (p => q) in TAUT A by Th29;

hence p => q in TAUT A by A2, CQC_THE1:46; :: thesis: verum

( p => q in TAUT A iff p => ('not' ('not' q)) in TAUT A )

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

thus ( p => q in TAUT A implies p => ('not' ('not' q)) in TAUT A ) :: thesis: ( p => ('not' ('not' q)) in TAUT A implies p => q in TAUT A )

proof

assume A2:
p => ('not' ('not' q)) in TAUT A
; :: thesis: p => q in TAUT A
assume A1:
p => q in TAUT A
; :: thesis: p => ('not' ('not' q)) in TAUT A

(p => q) => (p => ('not' ('not' q))) in TAUT A by Th29;

hence p => ('not' ('not' q)) in TAUT A by A1, CQC_THE1:46; :: thesis: verum

end;(p => q) => (p => ('not' ('not' q))) in TAUT A by Th29;

hence p => ('not' ('not' q)) in TAUT A by A1, CQC_THE1:46; :: thesis: verum

(p => ('not' ('not' q))) => (p => q) in TAUT A by Th29;

hence p => q in TAUT A by A2, CQC_THE1:46; :: thesis: verum