:: BVFUNC_8 semantic presentation
theorem
Th1
:
:: BVFUNC_8:1
for b
1
being non
empty
set
for b
2
, b
3
, b
4
, b
5
being
Element
of
Funcs
b
1
,
BOOLEAN
holds b
2
'imp'
(
(
b
3
'&'
b
4
)
'&'
b
5
)
=
(
(
b
2
'imp'
b
3
)
'&'
(
b
2
'imp'
b
4
)
)
'&'
(
b
2
'imp'
b
5
)
proof
let
c
1
be non
empty
set
;
let
c
2
, c
3
, c
4
, c
5
be
Element
of
Funcs
c
1
,
BOOLEAN
;
E1
: for b
1
being
Element
of c
1
holds
(
c
2
'imp'
(
(
c
3
'&'
c
4
)
'&'
c
5
)
)
.
b
1
=
(
(
(
c
2
'imp'
c
3
)
'&'
(
c
2
'imp'
c
4
)
)
'&'
(
c
2
'imp'
c
5
)
)
.
b
1
proof
let
c
6
be
Element
of c
1
;
(
(
(
c
2
'imp'
c
3
)
'&'
(
c
2
'imp'
c
4
)
)
'&'
(
c
2
'imp'
c
5
)
)
.
c
6
=
(
(
(
c
2
'imp'
c
3
)
'&'
(
c
2
'imp'
c
4
)
)
.
c
6
)
'&'
(
(
c
2
'imp'
c
5
)
.
c
6
)
by
VALUAT_1:def 6
.=
(
(
(
c
2
'imp'
c
3
)
.
c
6
)
'&'
(
(
c
2
'imp'
c
4
)
.
c
6
)
)
'&'
(
(
c
2
'imp'
c
5
)
.
c
6
)
by
VALUAT_1:def 6
.=
(
(
(
'not'
(
c
2
.
c
6
)
)
'or'
(
c
3
.
c
6
)
)
'&'
(
(
c
2
'imp'
c
4
)
.
c
6
)
)
'&'
(
(
c
2
'imp'
c
5
)
.
c
6
)
by
BVFUNC_1:def 11
.=
(
(
(
'not'
(
c
2
.
c
6
)
)
'or'
(
c
3
.
c
6
)
)
'&'
(
(
'not'
(
c
2
.
c
6
)
)
'or'
(
c
4
.
c
6
)
)
)
'&'
(
(
c
2
'imp'
c
5
)
.
c
6
)
by
BVFUNC_1:def 11
.=
(
(
(
'not'
(
c
2
.
c
6
)
)
'or'
(
c
3
.
c
6
)
)
'&'
(
(
'not'
(
c
2
.
c
6
)
)
'or'
(
c
4
.
c
6
)
)
)
'&'
(
(
'not'
(
c
2
.
c
6
)
)
'or'
(
c
5
.
c
6
)
)
by
BVFUNC_1:def 11
.=
(
(
'not'
(
c
2
.
c
6
)
)
'or'
(
(
c
3
.
c
6
)
'&'
(
c
4
.
c
6
)
)
)
'&'
(
(
'not'
(
c
2
.
c
6
)
)
'or'
(
c
5
.
c
6
)
)
by
BINARITH:23
.=
(
'not'
(
c
2
.
c
6
)
)
'or'
(
(
(
c
3
.
c
6
)
'&'
(
c
4
.
c
6
)
)
'&'
(
c
5
.
c
6
)
)
by
BINARITH:23
.=
(
'not'
(
c
2
.
c
6
)
)
'or'
(
(
(
c
3
'&'
c
4
)
.
c
6
)
'&'
(
c
5
.
c
6
)
)
by
VALUAT_1:def 6
.=
(
'not'
(
c
2
.
c
6
)
)
'or'
(
(
(
c
3
'&'
c
4
)
'&'
c
5
)
.
c
6
)
by
VALUAT_1:def 6
.=
(
c
2
'imp'
(
(
c
3
'&'
c
4
)
'&'
c
5
)
)
.
c
6
by
BVFUNC_1:def 11
;
hence
(
c
2
'imp'
(
(
c
3
'&'
c
4
)
'&'
c
5
)
)
.
c
6
=
(
(
(
c
2
'imp'
c
3
)
'&'
(
c
2
'imp'
c
4
)
)
'&'
(
c
2
'imp'
c
5
)
)
.
c
6
;
end;
consider
c
6
being
Function
such that
E2
: ( c
2
'imp'
(
(
c
3
'&'
c
4
)
'&'
c
5
)
=
c
6
&
dom
c
6
=
c
1
&
rng
c
6
c=
BOOLEAN
)
by
FUNCT_2:def 2
;
consider
c
7
being
Function
such that
E3
: (
(
(
c
2
'imp'
c
3
)
'&'
(
c
2
'imp'
c
4
)
)
'&'
(
c
2
'imp'
c
5
)
=
c
7
&
dom
c
7
=
c
1
&
rng
c
7
c=
BOOLEAN
)
by
FUNCT_2:def 2
;
( c
1
=
dom
c
6
& c
1
=
dom
c
7
& ( for b
1
being
set
holds
( b
1
in
c
1
implies c
6
.
b
1
=
c
7
.
b
1
) ) )
by
E1
,
E2
,
E3
;
hence
c
2
'imp'
(
(
c
3
'&'
c
4
)
'&'
c
5
)
=
(
(
c
2
'imp'
c
3
)
'&'
(
c
2
'imp'
c
4
)
)
'&'
(
c
2
'imp'
c
5
)
by
E2
,
E3
,
FUNCT_1:9
;
end;
theorem
Th2
:
:: BVFUNC_8:2
for b
1
being non
empty
set
for b
2
, b
3
, b
4
, b
5
being
Element
of
Funcs
b
1
,
BOOLEAN
holds b
2
'imp'
(
(
b
3
'or'
b
4
)
'or'
b
5
)
=
(
(
b
2
'imp'
b
3
)
'or'
(
b
2
'imp'
b
4
)
)
'or'
(
b
2
'imp'
b
5
)
proof
let
c
1
be non
empty
set
;
let
c
2
, c
3
, c
4
, c
5
be
Element
of
Funcs
c
1
,
BOOLEAN
;
E1
: for b
1
being
Element
of c
1
holds
(
c
2
'imp'
(
(
c
3
'or'
c
4
)
'or'
c
5
)
)
.
b
1
=
(
(
(
c
2
'imp'
c
3
)
'or'
(
c
2
'imp'
c
4
)
)
'or'
(
c
2
'imp'
c
5
)
)
.
b
1
proof
let
c
6
be
Element
of c
1
;
(
(
(
c
2
'imp'
c
3
)
'or'
(
c
2
'imp'
c
4
)
)
'or'
(
c
2
'imp'
c
5
)
)
.
c
6
=
(
(
(
c
2
'imp'
c
3
)
'or'
(
c
2
'imp'
c
4
)
)
.
c
6
)
'or'
(
(
c
2
'imp'
c
5
)
.
c
6
)
by
BVFUNC_1:def 7
.=
(
(
(
c
2
'imp'
c
3
)
.
c
6
)
'or'
(
(
c
2
'imp'
c
4
)
.
c
6
)
)
'or'
(
(
c
2
'imp'
c
5
)
.
c
6
)
by
BVFUNC_1:def 7
.=
(
(
(
'not'
(
c
2
.
c
6
)
)
'or'
(
c
3
.
c
6
)
)
'or'
(
(
c
2
'imp'
c
4
)
.
c
6
)
)
'or'
(
(
c
2
'imp'
c
5
)
.
c
6
)
by
BVFUNC_1:def 11
.=
(
(
(
'not'
(
c
2
.
c
6
)
)
'or'
(
c
3
.
c
6
)
)
'or'
(
(
'not'
(
c
2
.
c
6
)
)
'or'
(
c
4
.
c
6
)
)
)
'or'
(
(
c
2
'imp'
c
5
)
.
c
6
)
by
BVFUNC_1:def 11
.=
(
(
(
'not'
(
c
2
.
c
6
)
)
'or'
(
c
3
.
c
6
)
)
'or'
(
(
'not'
(
c
2
.
c
6
)
)
'or'
(
c
4
.
c
6
)
)
)
'or'
(
(
'not'
(
c
2
.
c
6
)
)
'or'
(
c
5
.
c
6
)
)
by
BVFUNC_1:def 11
.=
(
(
(
'not'
(
c
2
.
c
6
)
)
'or'
(
(
'not'
(
c
2
.
c
6
)
)
'or'
(
c
3
.
c
6
)
)
)
'or'
(
c
4
.
c
6
)
)
'or'
(
(
'not'
(
c
2
.
c
6
)
)
'or'
(
c
5
.
c
6
)
)
by
BINARITH:20
.=
(
(
(
(
'not'
(
c
2
.
c
6
)
)
'or'
(
'not'
(
c
2
.
c
6
)
)
)
'or'
(
c
3
.
c
6
)
)
'or'
(
c
4
.
c
6
)
)
'or'
(
(
'not'
(
c
2
.
c
6
)
)
'or'
(
c
5
.
c
6
)
)
by
BINARITH:20
.=
(
(
(
'not'
(
c
2
.
c
6
)
)
'or'
(
c
3
.
c
6
)
)
'or'
(
c
4
.
c
6
)
)
'or'
(
(
'not'
(
c
2
.
c
6
)
)
'or'
(
c
5
.
c
6
)
)
by
BINARITH:21
.=
(
(
'not'
(
c
2
.
c
6
)
)
'or'
(
(
c
3
.
c
6
)
'or'
(
c
4
.
c
6
)
)
)
'or'
(
(
'not'
(
c
2
.
c
6
)
)
'or'
(
c
5
.
c
6
)
)
by
BINARITH:20
.=
(
(
'not'
(
c
2
.
c
6
)
)
'or'
(
(
c
3
'or'
c
4
)
.
c
6
)
)
'or'
(
(
'not'
(
c
2
.
c
6
)
)
'or'
(
c
5
.
c
6
)
)
by
BVFUNC_1:def 7
.=
(
(
'not'
(
c
2
.
c
6
)
)
'or'
(
(
'not'
(
c
2
.
c
6
)
)
'or'
(
(
c
3
'or'
c
4
)
.
c
6
)
)
)
'or'
(
c
5
.
c
6
)
by
BINARITH:20
.=
(
(
(
'not'
(
c
2
.
c
6
)
)
'or'
(
'not'
(
c
2
.
c
6
)
)
)
'or'
(
(
c
3
'or'
c
4
)
.
c
6
)
)
'or'
(
c
5
.
c
6
)
by
BINARITH:20
.=
(
(
'not'
(
c
2
.
c
6
)
)
'or'
(
(
c
3
'or'
c
4
)
.
c
6
)
)
'or'
(
c
5
.
c
6
)
by
BINARITH:21
.=
(
'not'
(
c
2
.
c
6
)
)
'or'
(
(
(
c
3
'or'
c
4
)
.
c
6
)
'or'
(
c
5
.
c
6
)
)
by
BINARITH:20
.=
(
'not'
(
c
2
.
c
6
)
)
'or'
(
(
(
c
3
'or'
c
4
)
'or'
c
5
)
.
c
6
)
by
BVFUNC_1:def 7
.=
(
c
2
'imp'
(
(
c
3
'or'
c
4
)
'or'
c
5
)
)
.
c
6
by
BVFUNC_1:def 11
;
hence
(
c
2
'imp'
(
(
c
3
'or'
c
4
)
'or'
c
5
)
)
.
c
6
=
(
(
(
c
2
'imp'
c
3
)
'or'
(
c
2
'imp'
c
4
)
)
'or'
(
c
2
'imp'
c
5
)
)
.
c
6
;
end;
consider
c
6
being
Function
such that
E2
: ( c
2
'imp'
(
(
c
3
'or'
c
4
)
'or'
c
5
)
=
c
6
&
dom
c
6
=
c
1
&
rng
c
6
c=
BOOLEAN
)
by
FUNCT_2:def 2
;
consider
c
7
being
Function
such that
E3
: (
(
(
c
2
'imp'
c
3
)
'or'
(
c
2
'imp'
c
4
)
)
'or'
(
c
2
'imp'
c
5
)
=
c
7
&
dom
c
7
=
c
1
&
rng
c
7
c=
BOOLEAN
)
by
FUNCT_2:def 2
;
( c
1
=
dom
c
6
& c
1
=
dom
c
7
& ( for b
1
being
set
holds
( b
1
in
c
1
implies c
6
.
b
1
=
c
7
.
b
1
) ) )
by
E1
,
E2
,
E3
;
hence
c
2
'imp'
(
(
c
3
'or'
c
4
)
'or'
c
5
)
=
(
(
c
2
'imp'
c
3
)
'or'
(
c
2
'imp'
c
4
)
)
'or'
(
c
2
'imp'
c
5
)
by
E2
,
E3
,
FUNCT_1:9
;
end;
theorem
Th3
:
:: BVFUNC_8:3
for b
1
being non
empty
set
for b
2
, b
3
, b
4
, b
5
being
Element
of
Funcs
b
1
,
BOOLEAN
holds
(
(
b
2
'&'
b
3
)
'&'
b
4
)
'imp'
b
5
=
(
(
b
2
'imp'
b
5
)
'or'
(
b
3
'imp'
b
5
)
)
'or'
(
b
4
'imp'
b
5
)
proof
let
c
1
be non
empty
set
;
let
c
2
, c
3
, c
4
, c
5
be
Element
of
Funcs
c
1
,
BOOLEAN
;
E1
: for b
1
being
Element
of c
1
holds
(
(
(
c
2
'&'
c
3
)
'&'
c
4
)
'imp'
c
5
)
.
b
1
=
(
(
(
c
2
'imp'
c
5
)
'or'
(
c
3
'imp'
c
5
)
)
'or'
(
c
4
'imp'
c
5
)
)
.
b
1
proof
let
c
6
be
Element
of c
1
;
(
(
(
c
2
'imp'
c
5
)
'or'
(
c
3
'imp'
c
5
)
)
'or'
(
c
4
'imp'
c
5
)
)
.
c
6
=
(
(
(
c
2
'imp'
c
5
)
'or'
(
c
3
'imp'
c
5
)
)
.
c
6
)
'or'
(
(
c
4
'imp'
c
5
)
.
c
6
)
by
BVFUNC_1:def 7
.=
(
(
(
c
2
'imp'
c
5
)
.
c
6
)
'or'
(
(
c
3
'imp'
c
5
)
.
c
6
)
)
'or'
(
(
c
4
'imp'
c
5
)
.
c
6
)
by
BVFUNC_1:def 7
.=
(
(
(
'not'
(
c
2
.
c
6
)
)
'or'
(
c
5
.
c
6
)
)
'or'
(
(
c
3
'imp'
c
5
)
.
c
6
)
)
'or'
(
(
c
4
'imp'
c
5
)
.
c
6
)
by
BVFUNC_1:def 11
.=
(
(
(
'not'
(
c
2
.
c
6
)
)
'or'
(
c
5
.
c
6
)
)
'or'
(
(
'not'
(
c
3
.
c
6
)
)
'or'
(
c
5
.
c
6
)
)
)
'or'
(
(
c
4
'imp'
c
5
)
.
c
6
)
by
BVFUNC_1:def 11
.=
(
(
(
'not'
(
c
2
.
c
6
)
)
'or'
(
c
5
.
c
6
)
)
'or'
(
(
'not'
(
c
3
.
c
6
)
)
'or'
(
c
5
.
c
6
)
)
)
'or'
(
(
'not'
(
c
4
.
c
6
)
)
'or'
(
c
5
.
c
6
)
)
by
BVFUNC_1:def 11
.=
(
(
(
'not'
(
c
2
.
c
6
)
)
'or'
(
(
c
5
.
c
6
)
'or'
(
'not'
(
c
3
.
c
6
)
)
)
)
'or'
(
c
5
.
c
6
)
)
'or'
(
(
'not'
(
c
4
.
c
6
)
)
'or'
(
c
5
.
c
6
)
)
by
BINARITH:20
.=
(
(
(
(
'not'
(
c
2
.
c
6
)
)
'or'
(
'not'
(
c
3
.
c
6
)
)
)
'or'
(
c
5
.
c
6
)
)
'or'
(
c
5
.
c
6
)
)
'or'
(
(
'not'
(
c
4
.
c
6
)
)
'or'
(
c
5
.
c
6
)
)
by
BINARITH:20
.=
(
(
(
'not'
(
c
2
.
c
6
)
)
'or'
(
'not'
(
c
3
.
c
6
)
)
)
'or'
(
(
c
5
.
c
6
)
'or'
(
c
5
.
c
6
)
)
)
'or'
(
(
'not'
(
c
4
.
c
6
)
)
'or'
(
c
5
.
c
6
)
)
by
BINARITH:20
.=
(
(
(
'not'
(
c
2
.
c
6
)
)
'or'
(
'not'
(
c
3
.
c
6
)
)
)
'or'
(
c
5
.
c
6
)
)
'or'
(
(
'not'
(
c
4
.
c
6
)
)
'or'
(
c
5
.
c
6
)
)
by
BINARITH:21
.=
(
(
'not'
(
(
c
2
.
c
6
)
'&'
(
c
3
.
c
6
)
)
)
'or'
(
c
5
.
c
6
)
)
'or'
(
(
'not'
(
c
4
.
c
6
)
)
'or'
(
c
5
.
c
6
)
)
by
BINARITH:9
.=
(
(
'not'
(
(
c
2
.
c
6
)
'&'
(
c
3
.
c
6
)
)
)
'or'
(
(
c
5
.
c
6
)
'or'
(
'not'
(
c
4
.
c
6
)
)
)
)
'or'
(
c
5
.
c
6
)
by
BINARITH:20
.=
(
(
(
'not'
(
(
c
2
.
c
6
)
'&'
(
c
3
.
c
6
)
)
)
'or'
(
'not'
(
c
4
.
c
6
)
)
)
'or'
(
c
5
.
c
6
)
)
'or'
(
c
5
.
c
6
)
by
BINARITH:20
.=
(
(
'not'
(
(
c
2
.
c
6
)
'&'
(
c
3
.
c
6
)
)
)
'or'
(
'not'
(
c
4
.
c
6
)
)
)
'or'
(
(
c
5
.
c
6
)
'or'
(
c
5
.
c
6
)
)
by
BINARITH:20
.=
(
(
'not'
(
(
c
2
.
c
6
)
'&'
(
c
3
.
c
6
)
)
)
'or'
(
'not'
(
c
4
.
c
6
)
)
)
'or'
(
c
5
.
c
6
)
by
BINARITH:21
.=
(
'not'
(
(
(
c
2
.
c
6
)
'&'
(
c
3
.
c
6
)
)
'&'
(
c
4
.
c
6
)
)
)
'or'
(
c
5
.
c
6
)
by
BINARITH:9
.=
(
'not'
(
(
(
c
2
'&'
c
3
)
.
c
6
)
'&'
(
c
4
.
c
6
)
)
)
'or'
(
c
5
.
c
6
)
by
VALUAT_1:def 6
.=
(
'not'
(
(
(
c
2
'&'
c
3
)
'&'
c
4
)
.
c
6
)
)
'or'
(
c
5
.
c
6
)
by
VALUAT_1:def 6
.=
(
(
(
c
2
'&'
c
3
)
'&'
c
4
)
'imp'
c
5
)
.
c
6
by
BVFUNC_1:def 11
;
hence
(
(
(
c
2
'&'
c
3
)
'&'
c
4
)
'imp'
c
5
)
.
c
6
=
(
(
(
c
2
'imp'
c
5
)
'or'
(
c
3
'imp'
c
5
)
)
'or'
(
c
4
'imp'
c
5
)
)
.
c
6
;
end;
consider
c
6
being
Function
such that
E2
: (
(
(
c
2
'&'
c
3
)
'&'
c
4
)
'imp'
c
5
=
c
6
&
dom
c
6
=
c
1
&
rng
c
6
c=
BOOLEAN
)
by
FUNCT_2:def 2
;
consider
c
7
being
Function
such that
E3
: (
(
(
c
2
'imp'
c
5
)
'or'
(
c
3
'imp'
c
5
)
)
'or'
(
c
4
'imp'
c
5
)
=
c
7
&
dom
c
7
=
c
1
&
rng
c
7
c=
BOOLEAN
)
by
FUNCT_2:def 2
;
( c
1
=
dom
c
6
& c
1
=
dom
c
7
& ( for b
1
being
set
holds
( b
1
in
c
1
implies c
6
.
b
1
=
c
7
.
b
1
) ) )
by
E1
,
E2
,
E3
;
hence
(
(
c
2
'&'
c
3
)
'&'
c
4
)
'imp'
c
5
=
(
(
c
2
'imp'
c
5
)
'or'
(
c
3
'imp'
c
5
)
)
'or'
(
c
4
'imp'
c
5
)
by
E2
,
E3
,
FUNCT_1:9
;
end;
theorem
Th4
:
:: BVFUNC_8:4
for b
1
being non
empty
set
for b
2
, b
3
, b
4
, b
5
being
Element
of
Funcs
b
1
,
BOOLEAN
holds
(
(
b
2
'or'
b
3
)
'or'
b
4
)
'imp'
b
5
=
(
(
b
2
'imp'
b
5
)
'&'
(
b
3
'imp'
b
5
)
)
'&'
(
b
4
'imp'
b
5
)
proof
let
c
1
be non
empty
set
;
let
c
2
, c
3
, c
4
, c
5
be
Element
of
Funcs
c
1
,
BOOLEAN
;
E1
: for b
1
being
Element
of c
1
holds
(
(
(
c
2
'or'
c
3
)
'or'
c
4
)
'imp'
c
5
)
.
b
1
=
(
(
(
c
2
'imp'
c
5
)
'&'
(
c
3
'imp'
c
5
)
)
'&'
(
c
4
'imp'
c
5
)
)
.
b
1
proof
let
c
6
be
Element
of c
1
;
(
(
(
c
2
'imp'
c
5
)
'&'
(
c
3
'imp'
c
5
)
)
'&'
(
c
4
'imp'
c
5
)
)
.
c
6
=
(
(
(
c
2
'imp'
c
5
)
'&'
(
c
3
'imp'
c
5
)
)
.
c
6
)
'&'
(
(
c
4
'imp'
c
5
)
.
c
6
)
by
VALUAT_1:def 6
.=
(
(
(
c
2
'imp'
c
5
)
.
c
6
)
'&'
(
(
c
3
'imp'
c
5
)
.
c
6
)
)
'&'
(
(
c
4
'imp'
c
5
)
.
c
6
)
by
VALUAT_1:def 6
.=
(
(
(
'not'
(
c
2
.
c
6
)
)
'or'
(
c
5
.
c
6
)
)
'&'
(
(
c
3
'imp'
c
5
)
.
c
6
)
)
'&'
(
(
c
4
'imp'
c
5
)
.
c
6
)
by
BVFUNC_1:def 11
.=
(
(
(
'not'
(
c
2
.
c
6
)
)
'or'
(
c
5
.
c
6
)
)
'&'
(
(
'not'
(
c
3
.
c
6
)
)
'or'
(
c
5
.
c
6
)
)
)
'&'
(
(
c
4
'imp'
c
5
)
.
c
6
)
by
BVFUNC_1:def 11
.=
(
(
(
c
5
.
c
6
)
'or'
(
'not'
(
c
2
.
c
6
)
)
)
'&'
(
(
'not'
(
c
3
.
c
6
)
)
'or'
(
c
5
.
c
6
)
)
)
'&'
(
(
'not'
(
c
4
.
c
6
)
)
'or'
(
c
5
.
c
6
)
)
by
BVFUNC_1:def 11
.=
(
(
c
5
.
c
6
)
'or'
(
(
'not'
(
c
2
.
c
6
)
)
'&'
(
'not'
(
c
3
.
c
6
)
)
)
)
'&'
(
(
'not'
(
c
4
.
c
6
)
)
'or'
(
c
5
.
c
6
)
)
by
BINARITH:23
.=
(
(
'not'
(
(
c
2
.
c
6
)
'or'
(
c
3
.
c
6
)
)
)
'or'
(
c
5
.
c
6
)
)
'&'
(
(
'not'
(
c
4
.
c
6
)
)
'or'
(
c
5
.
c
6
)
)
by
BINARITH:10
.=
(
(
c
5
.
c
6
)
'or'
(
'not'
(
(
c
2
'or'
c
3
)
.
c
6
)
)
)
'&'
(
(
'not'
(
c
4
.
c
6
)
)
'or'
(
c
5
.
c
6
)
)
by
BVFUNC_1:def 7
.=
(
c
5
.
c
6
)
'or'
(
(
'not'
(
(
c
2
'or'
c
3
)
.
c
6
)
)
'&'
(
'not'
(
c
4
.
c
6
)
)
)
by
BINARITH:23
.=
(
'not'
(
(
(
c
2
'or'
c
3
)
.
c
6
)
'or'
(
c
4
.
c
6
)
)
)
'or'
(
c
5
.
c
6
)
by
BINARITH:10
.=
(
'not'
(
(
(
c
2
'or'
c
3
)
'or'
c
4
)
.
c
6
)
)
'or'
(
c
5
.
c
6
)
by
BVFUNC_1:def 7
.=
(
(
(
c
2
'or'
c
3
)
'or'
c
4
)
'imp'
c
5
)
.
c
6
by
BVFUNC_1:def 11
;
hence
(
(
(
c
2
'or'
c
3
)
'or'
c
4
)
'imp'
c
5
)
.
c
6
=
(
(
(
c
2
'imp'
c
5
)
'&'
(
c
3
'imp'
c
5
)
)
'&'
(
c
4
'imp'
c
5
)
)
.
c
6
;
end;
consider
c
6
being
Function
such that
E2
: (
(
(
c
2
'or'
c
3
)
'or'
c
4
)
'imp'
c
5
=
c
6
&
dom
c
6
=
c
1
&
rng
c
6
c=
BOOLEAN
)
by
FUNCT_2:def 2
;
consider
c
7
being
Function
such that
E3
: (
(
(
c
2
'imp'
c
5
)
'&'
(
c
3
'imp'
c
5
)
)
'&'
(
c
4
'imp'
c
5
)
=
c
7
&
dom
c
7
=
c
1
&
rng
c
7
c=
BOOLEAN
)
by
FUNCT_2:def 2
;
( c
1
=
dom
c
6
& c
1
=
dom
c
7
& ( for b
1
being
set
holds
( b
1
in
c
1
implies c
6
.
b
1
=
c
7
.
b
1
) ) )
by
E1
,
E2
,
E3
;
hence
(
(
c
2
'or'
c
3
)
'or'
c
4
)
'imp'
c
5
=
(
(
c
2
'imp'
c
5
)
'&'
(
c
3
'imp'
c
5
)
)
'&'
(
c
4
'imp'
c
5
)
by
E2
,
E3
,
FUNCT_1:9
;
end;
theorem
Th5
:
:: BVFUNC_8:5
for b
1
being non
empty
set
for b
2
, b
3
, b
4
being
Element
of
Funcs
b
1
,
BOOLEAN
holds
(
(
b
2
'imp'
b
3
)
'&'
(
b
3
'imp'
b
4
)
)
'&'
(
b
4
'imp'
b
2
)
=
(
(
(
(
b
2
'imp'
b
3
)
'&'
(
b
3
'imp'
b
4
)
)
'&'
(
b
4
'imp'
b
2
)
)
'&'
(
b
3
'imp'
b
2
)
)
'&'
(
b
2
'imp'
b
4
)
proof
let
c
1
be non
empty
set
;
let
c
2
, c
3
, c
4
be
Element
of
Funcs
c
1
,
BOOLEAN
;
E1
: for b
1
being
Element
of c
1
holds
(
(
(
c
2
'imp'
c
3
)
'&'
(
c
3
'imp'
c
4
)
)
'&'
(
c
4
'imp'
c
2
)
)
.
b
1
=
(
(
(
(
(
c
2
'imp'
c
3
)
'&'
(
c
3
'imp'
c
4
)
)
'&'
(
c
4
'imp'
c
2
)
)
'&'
(
c
3
'imp'
c
2
)
)
'&'
(
c
2
'imp'
c
4
)
)
.
b
1
proof
let
c
5
be
Element
of c
1
;
(
(
c
2
'imp'
c
3
)
'&'
(
c
3
'imp'
c
4
)
)
'&'
(
c
4
'imp'
c
2
)
=
(
(
(
'not'
c
2
)
'or'
c
3
)
'&'
(
c
3
'imp'
c
4
)
)
'&'
(
c
4
'imp'
c
2
)
by
BVFUNC_4:8
.=
(
(
(
'not'
c
2
)
'or'
c
3
)
'&'
(
(
'not'
c
3
)
'or'
c
4
)
)
'&'
(
c
4
'imp'
c
2
)
by
BVFUNC_4:8
.=
(
(
(
'not'
c
2
)
'or'
c
3
)
'&'
(
(
'not'
c
3
)
'or'
c
4
)
)
'&'
(
(
'not'
c
4
)
'or'
c
2
)
by
BVFUNC_4:8
.=
(
(
(
'not'
c
2
)
'&'
(
(
'not'
c
3
)
'or'
c
4
)
)
'or'
(
c
3
'&'
(
(
'not'
c
3
)
'or'
c
4
)
)
)
'&'
(
(
'not'
c
4
)
'or'
c
2
)
by
BVFUNC_1:15
.=
(
(
(
'not'
c
2
)
'&'
(
(
'not'
c
3
)
'or'
c
4
)
)
'or'
(
(
c
3
'&'
(
'not'
c
3
)
)
'or'
(
c
3
'&'
c
4
)
)
)
'&'
(
(
'not'
c
4
)
'or'
c
2
)
by
BVFUNC_1:15
.=
(
(
(
'not'
c
2
)
'&'
(
(
'not'
c
3
)
'or'
c
4
)
)
'or'
(
(
O_el
c
1
)
'or'
(
c
3
'&'
c
4
)
)
)
'&'
(
(
'not'
c
4
)
'or'
c
2
)
by
BVFUNC_4:5
.=
(
(
(
'not'
c
2
)
'&'
(
(
'not'
c
3
)
'or'
c
4
)
)
'or'
(
c
3
'&'
c
4
)
)
'&'
(
(
'not'
c
4
)
'or'
c
2
)
by
BVFUNC_1:12
.=
(
(
(
'not'
c
2
)
'or'
(
c
3
'&'
c
4
)
)
'&'
(
(
(
'not'
c
3
)
'or'
c
4
)
'or'
(
c
3
'&'
c
4
)
)
)
'&'
(
(
'not'
c
4
)
'or'
c
2
)
by
BVFUNC_1:14
.=
(
(
(
(
'not'
c
2
)
'or'
c
3
)
'&'
(
(
'not'
c
2
)
'or'
c
4
)
)
'&'
(
(
(
'not'
c
3
)
'or'
c
4
)
'or'
(
c
3
'&'
c
4
)
)
)
'&'
(
(
'not'
c
4
)
'or'
c
2
)
by
BVFUNC_1:14
.=
(
(
(
(
'not'
c
2
)
'or'
c
3
)
'&'
(
(
'not'
c
2
)
'or'
c
4
)
)
'&'
(
(
(
(
'not'
c
3
)
'or'
c
4
)
'or'
c
3
)
'&'
(
(
(
'not'
c
3
)
'or'
c
4
)
'or'
c
4
)
)
)
'&'
(
(
'not'
c
4
)
'or'
c
2
)
by
BVFUNC_1:14
.=
(
(
(
(
'not'
c
2
)
'or'
c
3
)
'&'
(
(
'not'
c
2
)
'or'
c
4
)
)
'&'
(
(
c
4
'or'
(
(
'not'
c
3
)
'or'
c
3
)
)
'&'
(
(
(
'not'
c
3
)
'or'
c
4
)
'or'
c
4
)
)
)
'&'
(
(
'not'
c
4
)
'or'
c
2
)
by
BVFUNC_1:11
.=
(
(
(
(
'not'
c
2
)
'or'
c
3
)
'&'
(
(
'not'
c
2
)
'or'
c
4
)
)
'&'
(
(
c
4
'or'
(
I_el
c
1
)
)
'&'
(
(
(
'not'
c
3
)
'or'
c
4
)
'or'
c
4
)
)
)
'&'
(
(
'not'
c
4
)
'or'
c
2
)
by
BVFUNC_4:6
.=
(
(
(
(
'not'
c
2
)
'or'
c
3
)
'&'
(
(
'not'
c
2
)
'or'
c
4
)
)
'&'
(
(
I_el
c
1
)
'&'
(
(
(
'not'
c
3
)
'or'
c
4
)
'or'
c
4
)
)
)
'&'
(
(
'not'
c
4
)
'or'
c
2
)
by
BVFUNC_1:13
.=
(
(
(
(
'not'
c
2
)
'or'
c
3
)
'&'
(
(
'not'
c
2
)
'or'
c
4
)
)
'&'
(
(
(
'not'
c
3
)
'or'
c
4
)
'or'
c
4
)
)
'&'
(
(
'not'
c
4
)
'or'
c
2
)
by
BVFUNC_1:9
.=
(
(
(
(
'not'
c
2
)
'or'
c
3
)
'&'
(
(
'not'
c
2
)
'or'
c
4
)
)
'&'
(
(
'not'
c
3
)
'or'
(
c
4
'or'
c
4
)
)
)
'&'
(
(
'not'
c
4
)
'or'
c
2
)
by
BVFUNC_1:11
.=
(
(
(
(
'not'
c
2
)
'or'
c
3
)
'&'
(
(
'not'
c
2
)
'or'
c
4
)
)
'&'
(
(
'not'
c
3
)
'or'
c
4
)
)
'&'
(
(
'not'
c
4
)
'or'
c
2
)
by
BVFUNC_1:10
.=
(
(
(
'not'
c
2
)
'or'
c
3
)
'&'
(
(
'not'
c
2
)
'or'
c
4
)
)
'&'
(
(
(
'not'
c
3
)
'or'
c
4
)
'&'
(
(
'not'
c
4
)
'or'
c
2
)
)
by
BVFUNC_1:7
.=
(
(
(
'not'
c
2
)
'or'
c
3
)
'&'
(
(
'not'
c
2
)
'or'
c
4
)
)
'&'
(
(
(
'not'
c
3
)
'&'
(
(
'not'
c
4
)
'or'
c
2
)
)
'or'
(
c
4
'&'
(
(
'not'
c
4
)
'or'
c
2
)
)
)
by
BVFUNC_1:15
.=
(
(
(
'not'
c
2
)
'or'
c
3
)
'&'
(
(
'not'
c
2
)
'or'
c
4
)
)
'&'
(
(
(
'not'
c
3
)
'&'
(
(
'not'
c
4
)
'or'
c
2
)
)
'or'
(
(
c
4
'&'
(
'not'
c
4
)
)
'or'
(
c
4
'&'
c
2
)
)
)
by
BVFUNC_1:15
.=
(
(
(
'not'
c
2
)
'or'
c
3
)
'&'
(
(
'not'
c
2
)
'or'
c
4
)
)
'&'
(
(
(
'not'
c
3
)
'&'
(
(
'not'
c
4
)
'or'
c
2
)
)
'or'
(
(
O_el
c
1
)
'or'
(
c
4
'&'
c
2
)
)
)
by
BVFUNC_4:5
.=
(
(
(
'not'
c
2
)
'or'
c
3
)
'&'
(
(
'not'
c
2
)
'or'
c
4
)
)
'&'
(
(
(
'not'
c
3
)
'&'
(
(
'not'
c
4
)
'or'
c
2
)
)
'or'
(
c
4
'&'
c
2
)
)
by
BVFUNC_1:12
.=
(
(
(
'not'
c
2
)
'or'
c
3
)
'&'
(
(
'not'
c
2
)
'or'
c
4
)
)
'&'
(
(
(
'not'
c
3
)
'or'
(
c
4
'&'
c
2
)
)
'&'
(
(
(
'not'
c
4
)
'or'
c
2
)
'or'
(
c
4
'&'
c
2
)
)
)
by
BVFUNC_1:14
.=
(
(
(
'not'
c
2
)
'or'
c
3
)
'&'
(
(
'not'
c
2
)
'or'
c
4
)
)
'&'
(
(
(
(
'not'
c
3
)
'or'
c
4
)
'&'
(
(
'not'
c
3
)
'or'
c
2
)
)
'&'
(
(
(
'not'
c
4
)
'or'
c
2
)
'or'
(
c
4
'&'
c
2
)
)
)
by
BVFUNC_1:14
.=
(
(
(
'not'
c
2
)
'or'
c
4
)
'&'
(
(
'not'
c
2
)
'or'
c
3
)
)
'&'
(
(
(
(
'not'
c
3
)
'or'
c
2
)
'&'
(
(
'not'
c
3
)
'or'
c
4
)
)
'&'
(
(
(
(
'not'
c
4
)
'or'
c
2
)
'or'
c
4
)
'&'
(
(
(
'not'
c
4
)
'or'
c
2
)
'or'
c
2
)
)
)
by
BVFUNC_1:14
.=
(
(
(
'not'
c
2
)
'or'
c
4
)
'&'
(
(
'not'
c
2
)
'or'
c
3
)
)
'&'
(
(
(
(
'not'
c
3
)
'or'
c
2
)
'&'
(
(
'not'
c
3
)
'or'
c
4
)
)
'&'
(
(
c
2
'or'
(
(
'not'
c
4
)
'or'
c
4
)
)
'&'
(
(
(
'not'
c
4
)
'or'
c
2
)
'or'
c
2
)
)
)
by
BVFUNC_1:11
.=
(
(
(
'not'
c
2
)