let
p
,
q
,
r
be
boolean
object
;
:: thesis:
(
p
=>
q
)
=>
(
(
r
=>
p
)
=>
(
r
=>
q
)
)
=
TRUE
A1
: (
q
=
FALSE
or
q
=
TRUE
)
by
Def3
;
A2
: (
p
=
FALSE
or
p
=
TRUE
)
by
Def3
;
(
r
=
FALSE
or
r
=
TRUE
)
by
Def3
;
hence
(
p
=>
q
)
=>
(
(
r
=>
p
)
=>
(
r
=>
q
)
)
=
TRUE
by
A1
,
A2
;
:: thesis:
verum