:: BVFUNC_1 semantic presentation  Show TPTP formulae Show IDV graph for whole article:: Showing IDV graph ... (Click the Palm Trees again to close it)

definition
let k, l be boolean set ;
func k 'imp' l -> set equals :: BVFUNC_1:def 1
('not' k) 'or' l;
correctness
coherence
('not' k) 'or' l is set
;
;
func k 'eqv' l -> set equals :: BVFUNC_1:def 2
'not' (k 'xor' l);
correctness
coherence
'not' (k 'xor' l) is set
;
;
commutativity
for b1 being set
for k, l being boolean set st b1 = 'not' (k 'xor' l) holds
b1 = 'not' (l 'xor' k)
;
end;

:: deftheorem defines 'imp' BVFUNC_1:def 1 :
for k, l being boolean set holds k 'imp' l = ('not' k) 'or' l;

:: deftheorem defines 'eqv' BVFUNC_1:def 2 :
for k, l being boolean set holds k 'eqv' l = 'not' (k 'xor' l);

registration
let k, l be boolean set ;
cluster k 'imp' l -> boolean ;
correctness
coherence
k 'imp' l is boolean
;
;
cluster k 'eqv' l -> boolean ;
correctness
coherence
k 'eqv' l is boolean
;
;
end;

registration
cluster boolean -> natural set ;
coherence
for b1 being set st b1 is boolean holds
b1 is natural
proof end;
end;

notation
let k, l be boolean set ;
synonym k '<' l for k <= l;
end;

definition
let k, l be boolean set ;
redefine pred k <= l means :Def3: :: BVFUNC_1:def 3
k 'imp' l = TRUE ;
compatibility
( k '<' l iff k 'imp' l = TRUE )
proof end;
end;

:: deftheorem Def3 defines '<' BVFUNC_1:def 3 :
for k, l being boolean set holds
( k '<' l iff k 'imp' l = TRUE );

definition
let Y be set ;
func BVF Y -> set equals :: BVFUNC_1:def 4
Funcs Y,BOOLEAN ;
correctness
coherence
Funcs Y,BOOLEAN is set
;
;
end;

:: deftheorem defines BVF BVFUNC_1:def 4 :
for Y being set holds BVF Y = Funcs Y,BOOLEAN ;

registration
let Y be set ;
cluster BVF Y -> non empty functional ;
coherence
( BVF Y is functional & not BVF Y is empty )
;
end;

registration
let Y be set ;
cluster -> boolean-valued Element of BVF Y;
coherence
for b1 being Element of BVF Y holds b1 is boolean-valued
proof end;
end;

notation
let a be boolean-valued Function;
let x be set ;
synonym Pj a,x for a . x;
end;

scheme :: BVFUNC_1:sch 1
BVFUniq{ F1() -> non empty set , F2() -> Element of Funcs F1(),BOOLEAN , F3() -> Element of Funcs F1(),BOOLEAN , F4( set , Element of Funcs F1(),BOOLEAN , Element of Funcs F1(),BOOLEAN ) -> set } :
for f1, f2 being Element of Funcs F1(),BOOLEAN st ( for x being Element of F1() holds Pj f1,x = F4(x,F2(),F3()) ) & ( for x being Element of F1() holds Pj f2,x = F4(x,F2(),F3()) ) holds
f1 = f2
proof end;

scheme :: BVFUNC_1:sch 2
BVFUniq1{ F1() -> non empty set , F2( set ) -> set } :
for f1, f2 being Element of Funcs F1(),BOOLEAN st ( for x being Element of F1() holds Pj f1,x = F2(x) ) & ( for x being Element of F1() holds Pj f2,x = F2(x) ) holds
f1 = f2
proof end;

definition
let Y be non empty set ;
let a be Element of BVF Y;
:: original: 'not'
redefine func 'not' a -> Element of BVF Y;
coherence
'not' a is Element of BVF Y
proof end;
let b be Element of BVF Y;
:: original: '&'
redefine func a '&' b -> Element of BVF Y;
coherence
a '&' b is Element of BVF Y
proof end;
end;

definition
let p, q be boolean-valued Function;
func p 'or' q -> Function means :Def5: :: BVFUNC_1:def 5
( dom it = (dom p) /\ (dom q) & ( for x being set st x in dom it holds
it . x = (p . x) 'or' (q . x) ) );
existence
ex b1 being Function st
( dom b1 = (dom p) /\ (dom q) & ( for x being set st x in dom b1 holds
b1 . x = (p . x) 'or' (q . x) ) )
proof end;
uniqueness
for b1, b2 being Function st dom b1 = (dom p) /\ (dom q) & ( for x being set st x in dom b1 holds
b1 . x = (p . x) 'or' (q . x) ) & dom b2 = (dom p) /\ (dom q) & ( for x being set st x in dom b2 holds
b2 . x = (p . x) 'or' (q . x) ) holds
b1 = b2
proof end;
commutativity
for b1 being Function
for p, q being boolean-valued Function st dom b1 = (dom p) /\ (dom q) & ( for x being set st x in dom b1 holds
b1 . x = (p . x) 'or' (q . x) ) holds
( dom b1 = (dom q) /\ (dom p) & ( for x being set st x in dom b1 holds
b1 . x = (q . x) 'or' (p . x) ) )
;
func p 'xor' q -> Function means :Def6: :: BVFUNC_1:def 6
( dom it = (dom p) /\ (dom q) & ( for x being set st x in dom it holds
it . x = (p . x) 'xor' (q . x) ) );
existence
ex b1 being Function st
( dom b1 = (dom p) /\ (dom q) & ( for x being set st x in dom b1 holds
b1 . x = (p . x) 'xor' (q . x) ) )
proof end;
uniqueness
for b1, b2 being Function st dom b1 = (dom p) /\ (dom q) & ( for x being set st x in dom b1 holds
b1 . x = (p . x) 'xor' (q . x) ) & dom b2 = (dom p) /\ (dom q) & ( for x being set st x in dom b2 holds
b2 . x = (p . x) 'xor' (q . x) ) holds
b1 = b2
proof end;
commutativity
for b1 being Function
for p, q being boolean-valued Function st dom b1 = (dom p) /\ (dom q) & ( for x being set st x in dom b1 holds
b1 . x = (p . x) 'xor' (q . x) ) holds
( dom b1 = (dom q) /\ (dom p) & ( for x being set st x in dom b1 holds
b1 . x = (q . x) 'xor' (p . x) ) )
;
end;

:: deftheorem Def5 defines 'or' BVFUNC_1:def 5 :
for p, q being boolean-valued Function
for b3 being Function holds
( b3 = p 'or' q iff ( dom b3 = (dom p) /\ (dom q) & ( for x being set st x in dom b3 holds
b3 . x = (p . x) 'or' (q . x) ) ) );

:: deftheorem Def6 defines 'xor' BVFUNC_1:def 6 :
for p, q being boolean-valued Function
for b3 being Function holds
( b3 = p 'xor' q iff ( dom b3 = (dom p) /\ (dom q) & ( for x being set st x in dom b3 holds
b3 . x = (p . x) 'xor' (q . x) ) ) );

registration
let p, q be boolean-valued Function;
cluster p 'or' q -> boolean-valued ;
coherence
p 'or' q is boolean-valued
proof end;
cluster p 'xor' q -> boolean-valued ;
coherence
p 'xor' q is boolean-valued
proof end;
end;

definition
let A be non empty set ;
let p, q be Element of Funcs A,BOOLEAN ;
:: original: 'or'
redefine func p 'or' q -> Element of Funcs A,BOOLEAN means :Def7: :: BVFUNC_1:def 7
for x being Element of A holds it . x = (p . x) 'or' (q . x);
coherence
p 'or' q is Element of Funcs A,BOOLEAN
proof end;
compatibility
for b1 being Element of Funcs A,BOOLEAN holds
( b1 = p 'or' q iff for x being Element of A holds b1 . x = (p . x) 'or' (q . x) )
proof end;
:: original: 'xor'
redefine func p 'xor' q -> Element of Funcs A,BOOLEAN means :: BVFUNC_1:def 8
for x being Element of A holds it . x = (p . x) 'xor' (q . x);
coherence
p 'xor' q is Element of Funcs A,BOOLEAN
proof end;
compatibility
for b1 being Element of Funcs A,BOOLEAN holds
( b1 = p 'xor' q iff for x being Element of A holds b1 . x = (p . x) 'xor' (q . x) )
proof end;
end;

:: deftheorem Def7 defines 'or' BVFUNC_1:def 7 :
for A being non empty set
for p, q, b4 being Element of Funcs A,BOOLEAN holds
( b4 = p 'or' q iff for x being Element of A holds b4 . x = (p . x) 'or' (q . x) );

:: deftheorem defines 'xor' BVFUNC_1:def 8 :
for A being non empty set
for p, q, b4 being Element of Funcs A,BOOLEAN holds
( b4 = p 'xor' q iff for x being Element of A holds b4 . x = (p . x) 'xor' (q . x) );

definition
let Y be non empty set ;
let a, b be Element of BVF Y;
:: original: 'or'
redefine func a 'or' b -> Element of BVF Y;
coherence
a 'or' b is Element of BVF Y
proof end;
:: original: 'xor'
redefine func a 'xor' b -> Element of BVF Y;
coherence
a 'xor' b is Element of BVF Y
proof end;
end;

definition
let p, q be boolean-valued Function;
func p 'imp' q -> Function means :Def9: :: BVFUNC_1:def 9
( dom it = (dom p) /\ (dom q) & ( for x being set st x in dom it holds
it . x = (p . x) 'imp' (q . x) ) );
existence
ex b1 being Function st
( dom b1 = (dom p) /\ (dom q) & ( for x being set st x in dom b1 holds
b1 . x = (p . x) 'imp' (q . x) ) )
proof end;
uniqueness
for b1, b2 being Function st dom b1 = (dom p) /\ (dom q) & ( for x being set st x in dom b1 holds
b1 . x = (p . x) 'imp' (q . x) ) & dom b2 = (dom p) /\ (dom q) & ( for x being set st x in dom b2 holds
b2 . x = (p . x) 'imp' (q . x) ) holds
b1 = b2
proof end;
func p 'eqv' q -> Function means :Def10: :: BVFUNC_1:def 10
( dom it = (dom p) /\ (dom q) & ( for x being set st x in dom it holds
it . x = (p . x) 'eqv' (q . x) ) );
existence
ex b1 being Function st
( dom b1 = (dom p) /\ (dom q) & ( for x being set st x in dom b1 holds
b1 . x = (p . x) 'eqv' (q . x) ) )
proof end;
uniqueness
for b1, b2 being Function st dom b1 = (dom p) /\ (dom q) & ( for x being set st x in dom b1 holds
b1 . x = (p . x) 'eqv' (q . x) ) & dom b2 = (dom p) /\ (dom q) & ( for x being set st x in dom b2 holds
b2 . x = (p . x) 'eqv' (q . x) ) holds
b1 = b2
proof end;
commutativity
for b1 being Function
for p, q being boolean-valued Function st dom b1 = (dom p) /\ (dom q) & ( for x being set st x in dom b1 holds
b1 . x = (p . x) 'eqv' (q . x) ) holds
( dom b1 = (dom q) /\ (dom p) & ( for x being set st x in dom b1 holds
b1 . x = (q . x) 'eqv' (p . x) ) )
;
end;

:: deftheorem Def9 defines 'imp' BVFUNC_1:def 9 :
for p, q being boolean-valued Function
for b3 being Function holds
( b3 = p 'imp' q iff ( dom b3 = (dom p) /\ (dom q) & ( for x being set st x in dom b3 holds
b3 . x = (p . x) 'imp' (q . x) ) ) );

:: deftheorem Def10 defines 'eqv' BVFUNC_1:def 10 :
for p, q being boolean-valued Function
for b3 being Function holds
( b3 = p 'eqv' q iff ( dom b3 = (dom p) /\ (dom q) & ( for x being set st x in dom b3 holds
b3 . x = (p . x) 'eqv' (q . x) ) ) );

registration
let p, q be boolean-valued Function;
cluster p 'imp' q -> boolean-valued ;
coherence
p 'imp' q is boolean-valued
proof end;
cluster p 'eqv' q -> boolean-valued ;
coherence
p 'eqv' q is boolean-valued
proof end;
end;

definition
let A be non empty set ;
let p, q be Element of Funcs A,BOOLEAN ;
:: original: 'imp'
redefine func p 'imp' q -> Element of Funcs A,BOOLEAN means :Def11: :: BVFUNC_1:def 11
for x being Element of A holds it . x = ('not' (Pj p,x)) 'or' (Pj q,x);
coherence
p 'imp' q is Element of Funcs A,BOOLEAN
proof end;
compatibility
for b1 being Element of Funcs A,BOOLEAN holds
( b1 = p 'imp' q iff for x being Element of A holds b1 . x = ('not' (Pj p,x)) 'or' (Pj q,x) )
proof end;
:: original: 'eqv'
redefine func p 'eqv' q -> Element of Funcs A,BOOLEAN means :Def12: :: BVFUNC_1:def 12
for x being Element of A holds it . x = 'not' ((Pj p,x) 'xor' (Pj q,x));
coherence
p 'eqv' q is Element of Funcs A,BOOLEAN
proof end;
compatibility
for b1 being Element of Funcs A,BOOLEAN holds
( b1 = p 'eqv' q iff for x being Element of A holds b1 . x = 'not' ((Pj p,x) 'xor' (Pj q,x)) )
proof end;
end;

:: deftheorem Def11 defines 'imp' BVFUNC_1:def 11 :
for A being non empty set
for p, q, b4 being Element of Funcs A,BOOLEAN holds
( b4 = p 'imp' q iff for x being Element of A holds b4 . x = ('not' (Pj p,x)) 'or' (Pj q,x) );

:: deftheorem Def12 defines 'eqv' BVFUNC_1:def 12 :
for A being non empty set
for p, q, b4 being Element of Funcs A,BOOLEAN holds
( b4 = p 'eqv' q iff for x being Element of A holds b4 . x = 'not' ((Pj p,x) 'xor' (Pj q,x)) );

definition
let Y be non empty set ;
let a, b be Element of BVF Y;
:: original: 'imp'
redefine func a 'imp' b -> Element of BVF Y;
coherence
a 'imp' b is Element of BVF Y
proof end;
:: original: 'eqv'
redefine func a 'eqv' b -> Element of BVF Y;
coherence
a 'eqv' b is Element of BVF Y
proof end;
end;

definition
let Y be non empty set ;
func O_el Y -> Element of Funcs Y,BOOLEAN means :Def13: :: BVFUNC_1:def 13
for x being Element of Y holds Pj it,x = FALSE ;
existence
ex b1 being Element of Funcs Y,BOOLEAN st
for x being Element of Y holds Pj b1,x = FALSE
proof end;
uniqueness
for b1, b2 being Element of Funcs Y,BOOLEAN st ( for x being Element of Y holds Pj b1,x = FALSE ) & ( for x being Element of Y holds Pj b2,x = FALSE ) holds
b1 = b2
proof end;
end;

:: deftheorem Def13 defines O_el BVFUNC_1:def 13 :
for Y being non empty set
for b2 being Element of Funcs Y,BOOLEAN holds
( b2 = O_el Y iff for x being Element of Y holds Pj b2,x = FALSE );

definition
let Y be non empty set ;
func I_el Y -> Element of Funcs Y,BOOLEAN means :Def14: :: BVFUNC_1:def 14
for x being Element of Y holds Pj it,x = TRUE ;
existence
ex b1 being Element of Funcs Y,BOOLEAN st
for x being Element of Y holds Pj b1,x = TRUE
proof end;
uniqueness
for b1, b2 being Element of Funcs Y,BOOLEAN st ( for x being Element of Y holds Pj b1,x = TRUE ) & ( for x being Element of Y holds Pj b2,x = TRUE ) holds
b1 = b2
proof end;
end;

:: deftheorem Def14 defines I_el BVFUNC_1:def 14 :
for Y being non empty set
for b2 being Element of Funcs Y,BOOLEAN holds
( b2 = I_el Y iff for x being Element of Y holds Pj b2,x = TRUE );

theorem :: BVFUNC_1:1  Show TPTP formulae Show IDV graph:: Showing IDV graph ... (Click the Palm Tree again to close it) Show TPTP problem
canceled;

theorem :: BVFUNC_1:2  Show TPTP formulae Show IDV graph:: Showing IDV graph ... (Click the Palm Tree again to close it) Show TPTP problem
canceled;

theorem :: BVFUNC_1:3  Show TPTP formulae Show IDV graph:: Showing IDV graph ... (Click the Palm Tree again to close it) Show TPTP problem
canceled;

theorem Th4: :: BVFUNC_1:4  Show TPTP formulae Show IDV graph:: Showing IDV graph ... (Click the Palm Tree again to close it) Show TPTP problem
for a being boolean-valued Function holds 'not' ('not' a) = a
proof end;

theorem Th5: :: BVFUNC_1:5  Show TPTP formulae Show IDV graph:: Showing IDV graph ... (Click the Palm Tree again to close it) Show TPTP problem
for Y being non empty set
for a being Element of Funcs Y,BOOLEAN holds
( 'not' (I_el Y) = O_el Y & 'not' (O_el Y) = I_el Y )
proof end;

theorem Th6: :: BVFUNC_1:6  Show TPTP formulae Show IDV graph:: Showing IDV graph ... (Click the Palm Tree again to close it) Show TPTP problem
for Y being non empty set
for a, b being Element of Funcs Y,BOOLEAN holds a '&' a = a
proof end;

theorem :: BVFUNC_1:7  Show TPTP formulae Show IDV graph:: Showing IDV graph ... (Click the Palm Tree again to close it) Show TPTP problem
for Y being non empty set
for a, b, c being Element of Funcs Y,BOOLEAN holds (a '&' b) '&' c = a '&' (b '&' c)
proof end;

theorem Th8: :: BVFUNC_1:8  Show TPTP formulae Show IDV graph:: Showing IDV graph ... (Click the Palm Tree again to close it) Show TPTP problem
for Y being non empty set
for a being Element of Funcs Y,BOOLEAN holds a '&' (O_el Y) = O_el Y
proof end;

theorem Th9: :: BVFUNC_1:9  Show TPTP formulae Show IDV graph:: Showing IDV graph ... (Click the Palm Tree again to close it) Show TPTP problem
for Y being non empty set
for a being Element of Funcs Y,BOOLEAN holds a '&' (I_el Y) = a
proof end;

theorem Th10: :: BVFUNC_1:10  Show TPTP formulae Show IDV graph:: Showing IDV graph ... (Click the Palm Tree again to close it) Show TPTP problem
for Y being non empty set
for a being Element of Funcs Y,BOOLEAN holds a 'or' a = a
proof end;

theorem :: BVFUNC_1:11  Show TPTP formulae Show IDV graph:: Showing IDV graph ... (Click the Palm Tree again to close it) Show TPTP problem
for Y being non empty set
for a, b, c being Element of Funcs Y,BOOLEAN holds (a 'or' b) 'or' c = a 'or' (b 'or' c)
proof end;

theorem Th12: :: BVFUNC_1:12  Show TPTP formulae Show IDV graph:: Showing IDV graph ... (Click the Palm Tree again to close it) Show TPTP problem
for Y being non empty set
for a being Element of Funcs Y,BOOLEAN holds a 'or' (O_el Y) = a
proof end;

theorem Th13: :: BVFUNC_1:13  Show TPTP formulae Show IDV graph:: Showing IDV graph ... (Click the Palm Tree again to close it) Show TPTP problem
for Y being non empty set
for a being Element of Funcs Y,BOOLEAN holds a 'or' (I_el Y) = I_el Y
proof end;

theorem :: BVFUNC_1:14  Show TPTP formulae Show IDV graph:: Showing IDV graph ... (Click the Palm Tree again to close it) Show TPTP problem
for Y being non empty set
for a, b, c being Element of Funcs Y,BOOLEAN holds (a '&' b) 'or' c = (a 'or' c) '&' (b 'or' c)
proof end;

theorem :: BVFUNC_1:15  Show TPTP formulae Show IDV graph:: Showing IDV graph ... (Click the Palm Tree again to close it) Show TPTP problem
for Y being non empty set
for a, b, c being Element of Funcs Y,BOOLEAN holds (a 'or' b) '&' c = (a '&' c) 'or' (b '&' c)
proof end;

theorem :: BVFUNC_1:16  Show TPTP formulae Show IDV graph:: Showing IDV graph ... (Click the Palm Tree again to close it) Show TPTP problem
for Y being non empty set
for a, b being Element of Funcs Y,BOOLEAN holds 'not' (a 'or' b) = ('not' a) '&' ('not' b)
proof end;

theorem :: BVFUNC_1:17  Show TPTP formulae Show IDV graph:: Showing IDV graph ... (Click the Palm Tree again to close it) Show TPTP problem
for Y being non empty set
for a, b being Element of Funcs Y,BOOLEAN holds 'not' (a '&' b) = ('not' a) 'or' ('not' b)
proof end;

definition
let Y be non empty set ;
let a, b be Element of Funcs Y,BOOLEAN ;
pred a '<' b means :Def15: :: BVFUNC_1:def 15
for x being Element of Y st Pj a,x = TRUE holds
Pj b,x = TRUE ;
reflexivity
for a being Element of Funcs Y,BOOLEAN
for x being Element of Y st Pj a,x = TRUE holds
Pj a,x = TRUE
;
end;

:: deftheorem Def15 defines '<' BVFUNC_1:def 15 :
for Y being non empty set
for a, b being Element of Funcs Y,BOOLEAN holds
( a '<' b iff for x being Element of Y st Pj a,x = TRUE holds
Pj b,x = TRUE );

theorem :: BVFUNC_1:18  Show TPTP formulae Show IDV graph:: Showing IDV graph ... (Click the Palm Tree again to close it) Show TPTP problem
for Y being non empty set
for a, b, c being Element of Funcs Y,BOOLEAN holds
( ( a '<' b & b '<' a implies a = b ) & ( a '<' b & b '<' c implies a '<' c ) )
proof end;

theorem Th19: :: BVFUNC_1:19  Show TPTP formulae Show IDV graph:: Showing IDV graph ... (Click the Palm Tree again to close it) Show TPTP problem
for Y being non empty set
for a, b being Element of Funcs Y,BOOLEAN holds
( a 'imp' b = I_el Y iff a '<' b )
proof end;

theorem :: BVFUNC_1:20  Show TPTP formulae Show IDV graph:: Showing IDV graph ... (Click the Palm Tree again to close it) Show TPTP problem
for Y being non empty set
for a, b being Element of Funcs Y,BOOLEAN holds
( a 'eqv' b = I_el Y iff a = b )
proof end;

theorem :: BVFUNC_1:21  Show TPTP formulae Show IDV graph:: Showing IDV graph ... (Click the Palm Tree again to close it) Show TPTP problem
for Y being non empty set
for a being Element of Funcs Y,BOOLEAN holds
( O_el Y '<' a & a '<' I_el Y )
proof end;

definition
let Y be non empty set ;
let a be Element of Funcs Y,BOOLEAN ;
func B_INF a -> Element of Funcs Y,BOOLEAN means :Def16: :: BVFUNC_1:def 16
it = I_el Y if for x being Element of Y holds Pj a,x = TRUE
otherwise it = O_el Y;
correctness
consistency
for b1 being Element of Funcs Y,BOOLEAN holds verum
;
existence
( ( for b1 being Element of Funcs Y,BOOLEAN holds verum ) & ( ( for x being Element of Y holds Pj a,x = TRUE ) implies ex b1 being Element of Funcs Y,BOOLEAN st b1 = I_el Y ) & ( not for x being Element of Y holds Pj a,x = TRUE implies ex b1 being Element of Funcs Y,BOOLEAN st b1 = O_el Y ) )
;
uniqueness
for b1, b2 being Element of Funcs Y,BOOLEAN holds
( ( ( for x being Element of Y holds Pj a,x = TRUE ) & b1 = I_el Y & b2 = I_el Y implies b1 = b2 ) & ( not for x being Element of Y holds Pj a,x = TRUE & b1 = O_el Y & b2 = O_el Y implies b1 = b2 ) )
;
;
func B_SUP a -> Element of Funcs Y,BOOLEAN means :Def17: :: BVFUNC_1:def 17
it = O_el Y if for x being Element of Y holds Pj a,x = FALSE
otherwise it = I_el Y;
correctness
consistency
for b1 being Element of Funcs Y,BOOLEAN holds verum
;
existence
( ( for b1 being Element of Funcs Y,BOOLEAN holds verum ) & ( ( for x being Element of Y holds Pj a,x = FALSE ) implies ex b1 being Element of Funcs Y,BOOLEAN st b1 = O_el Y ) & ( not for x being Element of Y holds Pj a,x = FALSE implies ex b1 being Element of Funcs Y,BOOLEAN st b1 = I_el Y ) )
;
uniqueness
for b1, b2 being Element of Funcs Y,BOOLEAN holds
( ( ( for x being Element of Y holds Pj a,x = FALSE ) & b1 = O_el Y & b2 = O_el Y implies b1 = b2 ) & ( not for x being Element of Y holds Pj a,x = FALSE & b1 = I_el Y & b2 = I_el Y implies b1 = b2 ) )
;
;
end;

:: deftheorem Def16 defines B_INF BVFUNC_1:def 16 :
for Y being non empty set
for a, b3 being Element of Funcs Y,BOOLEAN holds
( ( ( for x being Element of Y holds Pj a,x = TRUE ) implies ( b3 = B_INF a iff b3 = I_el Y ) ) & ( not for x being Element of Y holds Pj a,x = TRUE implies ( b3 = B_INF a iff b3 = O_el Y ) ) );

:: deftheorem Def17 defines B_SUP BVFUNC_1:def 17 :
for Y being non empty set
for a, b3 being Element of Funcs Y,BOOLEAN holds
( ( ( for x being Element of Y holds Pj a,x = FALSE ) implies ( b3 = B_SUP a iff b3 = O_el Y ) ) & ( not for x being Element of Y holds Pj a,x = FALSE implies ( b3 = B_SUP a iff b3 = I_el Y ) ) );

theorem Th22: :: BVFUNC_1:22  Show TPTP formulae Show IDV graph:: Showing IDV graph ... (Click the Palm Tree again to close it) Show TPTP problem
for Y being non empty set
for a being Element of Funcs Y,BOOLEAN holds
( 'not' (B_INF a) = B_SUP ('not' a) & 'not' (B_SUP a) = B_INF ('not' a) )
proof end;

theorem :: BVFUNC_1:23  Show TPTP formulae Show IDV graph:: Showing IDV graph ... (Click the Palm Tree again to close it) Show TPTP problem
for Y being non empty set holds
( B_INF (O_el Y) = O_el Y & B_INF (I_el Y) = I_el Y & B_SUP (O_el Y) = O_el Y & B_SUP (I_el Y) = I_el Y )
proof end;

registration
let Y be non empty set ;
cluster O_el Y -> constant ;
coherence
O_el Y is constant
proof end;
end;

registration
let Y be non empty set ;
cluster I_el Y -> constant ;
coherence
I_el Y is constant
proof end;
end;

registration
let Y be non empty set ;
cluster constant Element of Funcs Y,BOOLEAN ;
existence
ex b1 being Element of Funcs Y,BOOLEAN st b1 is constant
proof end;
end;

theorem Th24: :: BVFUNC_1:24  Show TPTP formulae Show IDV graph:: Showing IDV graph ... (Click the Palm Tree again to close it) Show TPTP problem
for Y being non empty set
for a being constant Element of Funcs Y,BOOLEAN holds
( a = O_el Y or a = I_el Y )
proof end;

theorem Th25: :: BVFUNC_1:25  Show TPTP formulae Show IDV graph:: Showing IDV graph ... (Click the Palm Tree again to close it) Show TPTP problem
for Y being non empty set
for d being constant Element of Funcs Y,BOOLEAN holds
( B_INF d = d & B_SUP d = d )
proof end;

theorem :: BVFUNC_1:26  Show TPTP formulae Show IDV graph:: Showing IDV graph ... (Click the Palm Tree again to close it) Show TPTP problem
for Y being non empty set
for a, b being Element of Funcs Y,BOOLEAN holds
( B_INF (a '&' b) = (B_INF a) '&' (B_INF b) & B_SUP (a 'or' b) = (B_SUP a) 'or' (B_SUP b) )
proof end;

theorem :: BVFUNC_1:27  Show TPTP formulae Show IDV graph:: Showing IDV graph ... (Click the Palm Tree again to close it) Show TPTP problem
for Y being non empty set
for a being Element of Funcs Y,BOOLEAN
for d being constant Element of Funcs Y,BOOLEAN holds
( B_INF (d 'imp' a) = d 'imp' (B_INF a) & B_INF (a 'imp' d) = (B_SUP a) 'imp' d )
proof end;

theorem :: BVFUNC_1:28  Show TPTP formulae Show IDV graph:: Showing IDV graph ... (Click the Palm Tree again to close it) Show TPTP problem
for Y being non empty set
for a being Element of Funcs Y,BOOLEAN
for d being constant Element of Funcs Y,BOOLEAN holds
( B_INF (d 'or' a) = d 'or' (B_INF a) & B_SUP (d '&' a) = d '&' (B_SUP a) & B_SUP (a '&' d) = (B_SUP a) '&' d )
proof end;

theorem :: BVFUNC_1:29  Show TPTP formulae Show IDV graph:: Showing IDV graph ... (Click the Palm Tree again to close it) Show TPTP problem
for Y being non empty set
for a being Element of Funcs Y,BOOLEAN
for x being Element of Y holds Pj (B_INF a),x '<' Pj a,x
proof end;

theorem :: BVFUNC_1:30  Show TPTP formulae Show IDV graph:: Showing IDV graph ... (Click the Palm Tree again to close it) Show TPTP problem
for Y being non empty set
for a being Element of Funcs Y,BOOLEAN
for x being Element of Y holds Pj a,x '<' Pj (B_SUP a),x
proof end;

definition
let Y be non empty set ;
let a be Element of Funcs Y,BOOLEAN ;
let PA be a_partition of Y;
pred a is_dependent_of PA means :Def18: :: BVFUNC_1:def 18
for F being set st F in PA holds
for x1, x2 being set st x1 in F & x2 in F holds
a . x1 = a . x2;
end;

:: deftheorem Def18 defines is_dependent_of BVFUNC_1:def 18 :
for Y being non empty set
for a being Element of Funcs Y,BOOLEAN
for PA being a_partition of Y holds
( a is_dependent_of PA iff for F being set st F in PA holds
for x1, x2 being set st x1 in F & x2 in F holds
a . x1 = a . x2 );

theorem :: BVFUNC_1:31  Show TPTP formulae Show IDV graph:: Showing IDV graph ... (Click the Palm Tree again to close it) Show TPTP problem
for Y being non empty set
for a being Element of Funcs Y,BOOLEAN holds a is_dependent_of %I Y
proof end;

theorem :: BVFUNC_1:32  Show TPTP formulae Show IDV graph:: Showing IDV graph ... (Click the Palm Tree again to close it) Show TPTP problem
for Y being non empty set
for a being constant Element of Funcs Y,BOOLEAN holds a is_dependent_of %O Y
proof end;

definition
let Y be non empty set ;
let PA be a_partition of Y;
:: original: Element
redefine mode Element of PA -> Subset of Y;
coherence
for b1 being Element of PA holds b1 is Subset of Y
proof end;
end;

definition
let Y be non empty set ;
let x be Element of Y;
let PA be a_partition of Y;
:: original: EqClass
redefine func EqClass x,PA -> Element of PA;
coherence
EqClass x,PA is Element of PA
by T_1TOPSP:def 1;
end;

definition
let Y be non empty set ;
let a be Element of Funcs Y,BOOLEAN ;
let PA be a_partition of Y;
func B_INF a,PA -> Element of Funcs Y,BOOLEAN means :Def19: :: BVFUNC_1:def 19
for y being Element of Y holds
( ( ( for x being Element of Y st x in EqClass y,PA holds
Pj a,x = TRUE ) implies Pj it,y = TRUE ) & ( ex x being Element of Y st
( x in EqClass y,PA & not Pj a,x = TRUE ) implies Pj it,y = FALSE ) );
existence
ex b1 being Element of Funcs Y,BOOLEAN st
for y being Element of Y holds
( ( ( for x being Element of Y st x in EqClass y,PA holds
Pj a,x = TRUE ) implies Pj b1,y = TRUE ) & ( ex x being Element of Y st
( x in EqClass y,PA & not Pj a,x = TRUE ) implies Pj b1,y = FALSE ) )
proof end;
uniqueness
for b1, b2 being Element of Funcs Y,BOOLEAN st ( for y being Element of Y holds
( ( ( for x being Element of Y st x in EqClass y,PA holds
Pj a,x = TRUE ) implies Pj b1,y = TRUE ) & ( ex x being Element of Y st
( x in EqClass y,PA & not Pj a,x = TRUE ) implies Pj b1,y = FALSE ) ) ) & ( for y being Element of Y holds
( ( ( for x being Element of Y st x in EqClass y,PA holds
Pj a,x = TRUE ) implies Pj b2,y = TRUE ) & ( ex x being Element of Y st
( x in EqClass y,PA & not Pj a,x = TRUE ) implies Pj b2,y = FALSE ) ) ) holds
b1 = b2
proof end;
end;

:: deftheorem Def19 defines B_INF BVFUNC_1:def 19 :
for Y being non empty set
for a being Element of Funcs Y,BOOLEAN
for PA being a_partition of Y
for b4 being Element of Funcs Y,BOOLEAN holds
( b4 = B_INF a,PA iff for y being Element of Y holds
( ( ( for x being Element of Y st x in EqClass y,PA holds
Pj a,x = TRUE ) implies Pj b4,y = TRUE ) & ( ex x being Element of Y st
( x in EqClass y,PA & not Pj a,x = TRUE ) implies Pj b4,y = FALSE ) ) );

definition
let Y be non empty set ;
let a be Element of Funcs Y,BOOLEAN ;
let PA be a_partition of Y;
func B_SUP a,PA -> Element of Funcs Y,BOOLEAN means :Def20: :: BVFUNC_1:def 20
for y being Element of Y holds
( ( ex x being Element of Y st
( x in EqClass y,PA & Pj a,x = TRUE ) implies Pj it,y = TRUE ) & ( ( for x being Element of Y holds
( not x in EqClass y,PA or not Pj a,x = TRUE ) ) implies Pj it,y = FALSE ) );
existence
ex b1 being Element of Funcs Y,BOOLEAN st
for y being Element of Y holds
( ( ex x being Element of Y st
( x in EqClass y,PA & Pj a,x = TRUE ) implies Pj b1,y = TRUE ) & ( ( for x being Element of Y holds
( not x in EqClass y,PA or not Pj a,x = TRUE ) ) implies Pj b1,y = FALSE ) )
proof end;
uniqueness
for b1, b2 being Element of Funcs Y,BOOLEAN st ( for y being Element of Y holds
( ( ex x being Element of Y st
( x in EqClass y,PA & Pj a,x = TRUE ) implies Pj b1,y = TRUE ) & ( ( for x being Element of Y holds
( not x in EqClass y,PA or not Pj a,x = TRUE ) ) implies Pj b1,y = FALSE ) ) ) & ( for y being Element of Y holds
( ( ex x being Element of Y st
( x in EqClass y,PA & Pj a,x = TRUE ) implies Pj b2,y = TRUE ) & ( ( for x being Element of Y holds
( not x in EqClass y,PA or not Pj a,x = TRUE ) ) implies Pj b2,y = FALSE ) ) ) holds
b1 = b2
proof end;
end;

:: deftheorem Def20 defines B_SUP BVFUNC_1:def 20 :
for Y being non empty set
for a being Element of Funcs Y,BOOLEAN
for PA being a_partition of Y
for b4 being Element of Funcs Y,BOOLEAN holds
( b4 = B_SUP a,PA iff for y being Element of Y holds
( ( ex x being Element of Y st
( x in EqClass y,PA & Pj a,x = TRUE ) implies Pj b4,y = TRUE ) & ( ( for x being Element of Y holds
( not x in EqClass y,PA or not Pj a,x = TRUE ) ) implies Pj b4,y = FALSE ) ) );

theorem :: BVFUNC_1:33  Show TPTP formulae Show IDV graph:: Showing IDV graph ... (Click the Palm Tree again to close it) Show TPTP problem
for Y being non empty set
for a being Element of Funcs Y,BOOLEAN
for PA being a_partition of Y holds B_INF a,PA is_dependent_of PA
proof end;

theorem :: BVFUNC_1:34  Show TPTP formulae Show IDV graph:: Showing IDV graph ... (Click the Palm Tree again to close it) Show TPTP problem
for Y being non empty set
for a being Element of Funcs Y,BOOLEAN
for PA being a_partition of Y holds B_SUP a,PA is_dependent_of PA
proof end;

theorem :: BVFUNC_1:35  Show TPTP formulae Show IDV graph:: Showing IDV graph ... (Click the Palm Tree again to close it) Show TPTP problem
for Y being non empty set
for a being Element of Funcs Y,BOOLEAN
for PA being a_partition of Y holds B_INF a,PA '<' a
proof end;

theorem :: BVFUNC_1:36  Show TPTP formulae Show IDV graph:: Showing IDV graph ... (Click the Palm Tree again to close it) Show TPTP problem
for Y being non empty set
for a being Element of Funcs Y,BOOLEAN
for PA being a_partition of Y holds a '<' B_SUP a,PA
proof end;

theorem :: BVFUNC_1:37  Show TPTP formulae Show IDV graph:: Showing IDV graph ... (Click the Palm Tree again to close it) Show TPTP problem
for Y being non empty set
for a being Element of Funcs Y,BOOLEAN
for PA being a_partition of Y holds 'not' (B_INF a,PA) = B_SUP ('not' a),PA
proof end;

theorem :: BVFUNC_1:38  Show TPTP formulae Show IDV graph:: Showing IDV graph ... (Click the Palm Tree again to close it) Show TPTP problem
for Y being non empty set
for a being Element of Funcs Y,BOOLEAN holds B_INF a,(%O Y) = B_INF a
proof end;

theorem :: BVFUNC_1:39  Show TPTP formulae Show IDV graph:: Showing IDV graph ... (Click the Palm Tree again to close it) Show TPTP problem
for Y being non empty set
for a being Element of Funcs Y,BOOLEAN holds B_SUP a,(%O Y) = B_SUP a
proof end;

theorem :: BVFUNC_1:40  Show TPTP formulae Show IDV graph:: Showing IDV graph ... (Click the Palm Tree again to close it) Show TPTP problem
for Y being non empty set
for a being Element of Funcs Y,BOOLEAN holds B_INF a,(%I Y) = a
proof end;

theorem :: BVFUNC_1:41  Show TPTP formulae Show IDV graph:: Showing IDV graph ... (Click the Palm Tree again to close it) Show TPTP problem
for Y being non empty set
for a being Element of Funcs Y,BOOLEAN holds B_SUP a,(%I Y) = a
proof end;

theorem :: BVFUNC_1:42  Show TPTP formulae Show IDV graph:: Showing IDV graph ... (Click the Palm Tree again to close it) Show TPTP problem
for Y being non empty set
for a, b being Element of Funcs Y,BOOLEAN
for PA being a_partition of Y holds B_INF (a '&' b),PA = (B_INF a,PA) '&' (B_INF b,PA)
proof end;

theorem :: BVFUNC_1:43  Show TPTP formulae Show IDV graph:: Showing IDV graph ... (Click the Palm Tree again to close it) Show TPTP problem
for Y being non empty set
for a, b being Element of Funcs Y,BOOLEAN
for PA being a_partition of Y holds B_SUP (a 'or' b),PA = (B_SUP a,PA) 'or' (B_SUP b,PA)
proof end;

definition
let Y be non empty set ;
let f be Element of Funcs Y,BOOLEAN ;
func GPart f -> a_partition of Y equals :: BVFUNC_1:def 21
{{ x where x is Element of Y : f . x = TRUE } ,{ x' where x' is Element of Y : f . x' = FALSE } } \ {{} };
correctness
coherence
{{ x where x is Element of Y : f . x = TRUE } ,{ x' where x' is Element of Y : f . x' = FALSE } } \ {{} } is a_partition of Y
;
proof end;
end;

:: deftheorem defines GPart BVFUNC_1:def 21 :
for Y being non empty set
for f being Element of Funcs Y,BOOLEAN holds GPart f = {{ x where x is Element of Y : f . x = TRUE } ,{ x' where x' is Element of Y : f . x' = FALSE } } \ {{} };

theorem :: BVFUNC_1:44  Show TPTP formulae Show IDV graph:: Showing IDV graph ... (Click the Palm Tree again to close it) Show TPTP problem
for Y being non empty set
for a being Element of Funcs Y,BOOLEAN holds a is_dependent_of GPart a
proof end;

theorem :: BVFUNC_1:45  Show TPTP formulae Show IDV graph:: Showing IDV graph ... (Click the Palm Tree again to close it) Show TPTP problem
for Y being non empty set
for a being Element of Funcs Y,BOOLEAN
for PA being a_partition of Y st a is_dependent_of PA holds
PA is_finer_than GPart a
proof end;