Article BVFUNC_2, MML version 4.99.1005
:: BVFUNC_2:funcnot 1 => BVFUNC_2:func 1
definition
let a1 be set;
redefine func PARTITIONS a1 -> partition-membered Family-Class of a1;
end;
:: BVFUNC_2:modenot 1 => BVFUNC_2:mode 1
definition
let a1 be set;
let a2 be non empty partition-membered Family-Class of a1;
redefine mode Element of a2 -> a_partition of a1;
end;
:: BVFUNC_2:th 1
theorem
for b1 being non empty set
for b2 being Element of bool PARTITIONS b1
for b3 being Element of b1 holds
ex b4 being Element of bool b1 st
b3 in b4 &
(ex b5 being Relation-like Function-like set st
ex b6 being Element of bool bool b1 st
proj1 b5 = b2 &
proj2 b5 = b6 &
(for b7 being set
st b7 in b2
holds b5 . b7 in b7) &
b4 = Intersect b6 &
b4 <> {});
:: BVFUNC_2:funcnot 2 => BVFUNC_2:func 2
definition
let a1 be non empty set;
let a2 be Element of bool PARTITIONS a1;
func '/\' A2 -> a_partition of a1 means
for b1 being set holds
b1 in it
iff
ex b2 being Relation-like Function-like set st
ex b3 being Element of bool bool a1 st
proj1 b2 = a2 &
proj2 b2 = b3 &
(for b4 being set
st b4 in a2
holds b2 . b4 in b4) &
b1 = Intersect b3 &
b1 <> {};
end;
:: BVFUNC_2:def 1
theorem
for b1 being non empty set
for b2 being Element of bool PARTITIONS b1
for b3 being a_partition of b1 holds
b3 = '/\' b2
iff
for b4 being set holds
b4 in b3
iff
ex b5 being Relation-like Function-like set st
ex b6 being Element of bool bool b1 st
proj1 b5 = b2 &
proj2 b5 = b6 &
(for b7 being set
st b7 in b2
holds b5 . b7 in b7) &
b4 = Intersect b6 &
b4 <> {};
:: BVFUNC_2:prednot 1 => BVFUNC_2:pred 1
definition
let a1 be non empty set;
let a2 be Element of bool PARTITIONS a1;
let a3 be set;
pred A3 is_upper_min_depend_of A2 means
(for b1 being a_partition of a1
st b1 in a2
holds a3 is_a_dependent_set_of b1) &
(for b1 being set
st b1 c= a3 &
(for b2 being a_partition of a1
st b2 in a2
holds b1 is_a_dependent_set_of b2)
holds b1 = a3);
end;
:: BVFUNC_2:dfs 2
definiens
let a1 be non empty set;
let a2 be Element of bool PARTITIONS a1;
let a3 be set;
To prove
a3 is_upper_min_depend_of a2
it is sufficient to prove
thus (for b1 being a_partition of a1
st b1 in a2
holds a3 is_a_dependent_set_of b1) &
(for b1 being set
st b1 c= a3 &
(for b2 being a_partition of a1
st b2 in a2
holds b1 is_a_dependent_set_of b2)
holds b1 = a3);
:: BVFUNC_2:def 2
theorem
for b1 being non empty set
for b2 being Element of bool PARTITIONS b1
for b3 being set holds
b3 is_upper_min_depend_of b2
iff
(for b4 being a_partition of b1
st b4 in b2
holds b3 is_a_dependent_set_of b4) &
(for b4 being set
st b4 c= b3 &
(for b5 being a_partition of b1
st b5 in b2
holds b4 is_a_dependent_set_of b5)
holds b4 = b3);
:: BVFUNC_2:th 2
theorem
for b1 being non empty set
for b2 being Element of bool PARTITIONS b1
for b3 being Element of b1
st b2 <> {}
holds ex b4 being Element of bool b1 st
b3 in b4 & b4 is_upper_min_depend_of b2;
:: BVFUNC_2:funcnot 3 => BVFUNC_2:func 3
definition
let a1 be non empty set;
let a2 be Element of bool PARTITIONS a1;
func '\/' A2 -> a_partition of a1 means
for b1 being set holds
b1 in it
iff
b1 is_upper_min_depend_of a2
if a2 <> {}
otherwise it = SmallestPartition a1;
end;
:: BVFUNC_2:def 3
theorem
for b1 being non empty set
for b2 being Element of bool PARTITIONS b1
for b3 being a_partition of b1 holds
(b2 = {} or (b3 = '\/' b2
iff
for b4 being set holds
b4 in b3
iff
b4 is_upper_min_depend_of b2)) &
(b2 = {} implies (b3 = '\/' b2
iff
b3 = SmallestPartition b1));
:: BVFUNC_2:th 3
theorem
for b1 being non empty set
for b2 being Element of bool PARTITIONS b1
for b3 being a_partition of b1
st b3 in b2
holds '/\' b2 is_finer_than b3;
:: BVFUNC_2:th 4
theorem
for b1 being non empty set
for b2 being Element of bool PARTITIONS b1
for b3 being a_partition of b1
st b3 in b2
holds b3 is_finer_than '\/' b2;
:: BVFUNC_2:attrnot 1 => BVFUNC_2:attr 1
definition
let a1 be non empty set;
let a2 be Element of bool PARTITIONS a1;
attr a2 is generating means
'/\' a2 = SmallestPartition a1;
end;
:: BVFUNC_2:dfs 4
definiens
let a1 be non empty set;
let a2 be Element of bool PARTITIONS a1;
To prove
a2 is generating
it is sufficient to prove
thus '/\' a2 = SmallestPartition a1;
:: BVFUNC_2:def 4
theorem
for b1 being non empty set
for b2 being Element of bool PARTITIONS b1 holds
b2 is generating(b1)
iff
'/\' b2 = SmallestPartition b1;
:: BVFUNC_2:attrnot 2 => BVFUNC_2:attr 2
definition
let a1 be non empty set;
let a2 be Element of bool PARTITIONS a1;
attr a2 is independent means
for b1 being Relation-like Function-like set
for b2 being Element of bool bool a1
st proj1 b1 = a2 &
proj2 b1 = b2 &
(for b3 being set
st b3 in a2
holds b1 . b3 in b3)
holds Intersect b2 <> {};
end;
:: BVFUNC_2:dfs 5
definiens
let a1 be non empty set;
let a2 be Element of bool PARTITIONS a1;
To prove
a2 is independent
it is sufficient to prove
thus for b1 being Relation-like Function-like set
for b2 being Element of bool bool a1
st proj1 b1 = a2 &
proj2 b1 = b2 &
(for b3 being set
st b3 in a2
holds b1 . b3 in b3)
holds Intersect b2 <> {};
:: BVFUNC_2:def 5
theorem
for b1 being non empty set
for b2 being Element of bool PARTITIONS b1 holds
b2 is independent(b1)
iff
for b3 being Relation-like Function-like set
for b4 being Element of bool bool b1
st proj1 b3 = b2 &
proj2 b3 = b4 &
(for b5 being set
st b5 in b2
holds b3 . b5 in b5)
holds Intersect b4 <> {};
:: BVFUNC_2:prednot 2 => BVFUNC_2:pred 2
definition
let a1 be non empty set;
let a2 be Element of bool PARTITIONS a1;
pred A2 is_a_coordinate means
a2 is independent(a1) & a2 is generating(a1);
end;
:: BVFUNC_2:dfs 6
definiens
let a1 be non empty set;
let a2 be Element of bool PARTITIONS a1;
To prove
a2 is_a_coordinate
it is sufficient to prove
thus a2 is independent(a1) & a2 is generating(a1);
:: BVFUNC_2:def 6
theorem
for b1 being non empty set
for b2 being Element of bool PARTITIONS b1 holds
b2 is_a_coordinate
iff
b2 is independent(b1) & b2 is generating(b1);
:: BVFUNC_2:funcnot 4 => BVFUNC_2:func 4
definition
let a1 be non empty set;
let a2 be a_partition of a1;
redefine func {a2} -> Element of bool PARTITIONS a1;
end;
:: BVFUNC_2:funcnot 5 => BVFUNC_2:func 5
definition
let a1 be non empty set;
let a2 be a_partition of a1;
let a3 be Element of bool PARTITIONS a1;
func CompF(A2,A3) -> a_partition of a1 equals
'/\' (a3 \ {a2});
end;
:: BVFUNC_2:def 7
theorem
for b1 being non empty set
for b2 being a_partition of b1
for b3 being Element of bool PARTITIONS b1 holds
CompF(b2,b3) = '/\' (b3 \ {b2});
:: BVFUNC_2:prednot 3 => BVFUNC_2:pred 3
definition
let a1 be non empty set;
let a2 be Element of Funcs(a1,BOOLEAN);
let a3 be Element of bool PARTITIONS a1;
let a4 be a_partition of a1;
pred A2 is_independent_of A4,A3 means
a2 is_dependent_of CompF(a4,a3);
end;
:: BVFUNC_2:dfs 8
definiens
let a1 be non empty set;
let a2 be Element of Funcs(a1,BOOLEAN);
let a3 be Element of bool PARTITIONS a1;
let a4 be a_partition of a1;
To prove
a2 is_independent_of a4,a3
it is sufficient to prove
thus a2 is_dependent_of CompF(a4,a3);
:: BVFUNC_2:def 8
theorem
for b1 being non empty set
for b2 being Element of Funcs(b1,BOOLEAN)
for b3 being Element of bool PARTITIONS b1
for b4 being a_partition of b1 holds
b2 is_independent_of b4,b3
iff
b2 is_dependent_of CompF(b4,b3);
:: BVFUNC_2:funcnot 6 => BVFUNC_2:func 6
definition
let a1 be non empty set;
let a2 be Element of Funcs(a1,BOOLEAN);
let a3 be Element of bool PARTITIONS a1;
let a4 be a_partition of a1;
func All(A2,A4,A3) -> Element of Funcs(a1,BOOLEAN) equals
B_INF(a2,CompF(a4,a3));
end;
:: BVFUNC_2:def 9
theorem
for b1 being non empty set
for b2 being Element of Funcs(b1,BOOLEAN)
for b3 being Element of bool PARTITIONS b1
for b4 being a_partition of b1 holds
All(b2,b4,b3) = B_INF(b2,CompF(b4,b3));
:: BVFUNC_2:funcnot 7 => BVFUNC_2:func 7
definition
let a1 be non empty set;
let a2 be Element of Funcs(a1,BOOLEAN);
let a3 be Element of bool PARTITIONS a1;
let a4 be a_partition of a1;
func Ex(A2,A4,A3) -> Element of Funcs(a1,BOOLEAN) equals
B_SUP(a2,CompF(a4,a3));
end;
:: BVFUNC_2:def 10
theorem
for b1 being non empty set
for b2 being Element of Funcs(b1,BOOLEAN)
for b3 being Element of bool PARTITIONS b1
for b4 being a_partition of b1 holds
Ex(b2,b4,b3) = B_SUP(b2,CompF(b4,b3));
:: BVFUNC_2:th 5
theorem
for b1 being non empty set
for b2 being Element of bool PARTITIONS b1
for b3 being Element of Funcs(b1,BOOLEAN)
for b4 being a_partition of b1 holds
All(b3,b4,b2) is_dependent_of CompF(b4,b2);
:: BVFUNC_2:th 6
theorem
for b1 being non empty set
for b2 being Element of bool PARTITIONS b1
for b3 being Element of Funcs(b1,BOOLEAN)
for b4 being a_partition of b1 holds
Ex(b3,b4,b2) is_dependent_of CompF(b4,b2);
:: BVFUNC_2:th 7
theorem
for b1 being non empty set
for b2 being Element of bool PARTITIONS b1
for b3 being Element of Funcs(b1,BOOLEAN)
for b4 being a_partition of b1 holds
All(I_el b1,b4,b2) = I_el b1;
:: BVFUNC_2:th 8
theorem
for b1 being non empty set
for b2 being Element of bool PARTITIONS b1
for b3 being Element of Funcs(b1,BOOLEAN)
for b4 being a_partition of b1 holds
Ex(I_el b1,b4,b2) = I_el b1;
:: BVFUNC_2:th 9
theorem
for b1 being non empty set
for b2 being Element of bool PARTITIONS b1
for b3 being Element of Funcs(b1,BOOLEAN)
for b4 being a_partition of b1 holds
All(O_el b1,b4,b2) = O_el b1;
:: BVFUNC_2:th 10
theorem
for b1 being non empty set
for b2 being Element of bool PARTITIONS b1
for b3 being Element of Funcs(b1,BOOLEAN)
for b4 being a_partition of b1 holds
Ex(O_el b1,b4,b2) = O_el b1;
:: BVFUNC_2:th 11
theorem
for b1 being non empty set
for b2 being Element of bool PARTITIONS b1
for b3 being Element of Funcs(b1,BOOLEAN)
for b4 being a_partition of b1 holds
All(b3,b4,b2) '<' b3;
:: BVFUNC_2:th 12
theorem
for b1 being non empty set
for b2 being Element of bool PARTITIONS b1
for b3 being Element of Funcs(b1,BOOLEAN)
for b4 being a_partition of b1 holds
b3 '<' Ex(b3,b4,b2);
:: BVFUNC_2:th 14
theorem
for b1 being non empty set
for b2 being Element of bool PARTITIONS b1
for b3, b4 being Element of Funcs(b1,BOOLEAN)
for b5 being a_partition of b1 holds
(All(b3,b5,b2)) 'or' All(b4,b5,b2) '<' All(b3 'or' b4,b5,b2);
:: BVFUNC_2:th 15
theorem
for b1 being non empty set
for b2 being Element of bool PARTITIONS b1
for b3, b4 being Element of Funcs(b1,BOOLEAN)
for b5 being a_partition of b1 holds
All(b3 'imp' b4,b5,b2) '<' (All(b3,b5,b2)) 'imp' All(b4,b5,b2);
:: BVFUNC_2:th 17
theorem
for b1 being non empty set
for b2, b3 being Element of Funcs(b1,BOOLEAN)
for b4 being Element of bool PARTITIONS b1
for b5 being a_partition of b1 holds
Ex(b2 '&' b3,b5,b4) '<' (Ex(b2,b5,b4)) '&' Ex(b3,b5,b4);
:: BVFUNC_2:th 18
theorem
for b1 being non empty set
for b2 being Element of bool PARTITIONS b1
for b3, b4 being Element of Funcs(b1,BOOLEAN)
for b5 being a_partition of b1 holds
(Ex(b3,b5,b2)) 'xor' Ex(b4,b5,b2) '<' Ex(b3 'xor' b4,b5,b2);
:: BVFUNC_2:th 19
theorem
for b1 being non empty set
for b2 being Element of bool PARTITIONS b1
for b3, b4 being Element of Funcs(b1,BOOLEAN)
for b5 being a_partition of b1 holds
(Ex(b3,b5,b2)) 'imp' Ex(b4,b5,b2) '<' Ex(b3 'imp' b4,b5,b2);
:: BVFUNC_2:th 20
theorem
for b1 being non empty set
for b2 being Element of bool PARTITIONS b1
for b3 being Element of Funcs(b1,BOOLEAN)
for b4 being a_partition of b1 holds
'not' All(b3,b4,b2) = Ex('not' b3,b4,b2);
:: BVFUNC_2:th 21
theorem
for b1 being non empty set
for b2 being Element of bool PARTITIONS b1
for b3 being Element of Funcs(b1,BOOLEAN)
for b4 being a_partition of b1 holds
'not' Ex(b3,b4,b2) = All('not' b3,b4,b2);
:: BVFUNC_2:th 22
theorem
for b1 being non empty set
for b2 being Element of bool PARTITIONS b1
for b3, b4 being Element of Funcs(b1,BOOLEAN)
for b5 being a_partition of b1
st b3 is_independent_of b5,b2
holds All(b3 'imp' b4,b5,b2) = b3 'imp' All(b4,b5,b2);
:: BVFUNC_2:th 23
theorem
for b1 being non empty set
for b2 being Element of bool PARTITIONS b1
for b3, b4 being Element of Funcs(b1,BOOLEAN)
for b5 being a_partition of b1
st b3 is_independent_of b5,b2
holds All(b4 'imp' b3,b5,b2) = (Ex(b4,b5,b2)) 'imp' b3;
:: BVFUNC_2:th 24
theorem
for b1 being non empty set
for b2 being Element of bool PARTITIONS b1
for b3, b4 being Element of Funcs(b1,BOOLEAN)
for b5 being a_partition of b1
st b3 is_independent_of b5,b2
holds All(b3 'or' b4,b5,b2) = b3 'or' All(b4,b5,b2);
:: BVFUNC_2:th 25
theorem
for b1 being non empty set
for b2 being Element of bool PARTITIONS b1
for b3, b4 being Element of Funcs(b1,BOOLEAN)
for b5 being a_partition of b1
st b3 is_independent_of b5,b2
holds All(b4 'or' b3,b5,b2) = (All(b4,b5,b2)) 'or' b3;
:: BVFUNC_2:th 26
theorem
for b1 being non empty set
for b2 being Element of bool PARTITIONS b1
for b3, b4 being Element of Funcs(b1,BOOLEAN)
for b5 being a_partition of b1
st b3 is_independent_of b5,b2
holds All(b4 'or' b3,b5,b2) '<' (Ex(b4,b5,b2)) 'or' b3;
:: BVFUNC_2:th 27
theorem
for b1 being non empty set
for b2 being Element of bool PARTITIONS b1
for b3, b4 being Element of Funcs(b1,BOOLEAN)
for b5 being a_partition of b1
st b3 is_independent_of b5,b2
holds All(b3 '&' b4,b5,b2) = b3 '&' All(b4,b5,b2);
:: BVFUNC_2:th 28
theorem
for b1 being non empty set
for b2 being Element of bool PARTITIONS b1
for b3, b4 being Element of Funcs(b1,BOOLEAN)
for b5 being a_partition of b1
st b3 is_independent_of b5,b2
holds All(b4 '&' b3,b5,b2) = (All(b4,b5,b2)) '&' b3;
:: BVFUNC_2:th 29
theorem
for b1 being non empty set
for b2 being Element of bool PARTITIONS b1
for b3, b4 being Element of Funcs(b1,BOOLEAN)
for b5 being a_partition of b1 holds
All(b3 '&' b4,b5,b2) '<' (Ex(b3,b5,b2)) '&' b4;
:: BVFUNC_2:th 30
theorem
for b1 being non empty set
for b2 being Element of bool PARTITIONS b1
for b3, b4 being Element of Funcs(b1,BOOLEAN)
for b5 being a_partition of b1
st b3 is_independent_of b5,b2
holds All(b3 'xor' b4,b5,b2) '<' b3 'xor' All(b4,b5,b2);
:: BVFUNC_2:th 31
theorem
for b1 being non empty set
for b2 being Element of bool PARTITIONS b1
for b3, b4 being Element of Funcs(b1,BOOLEAN)
for b5 being a_partition of b1
st b3 is_independent_of b5,b2
holds All(b4 'xor' b3,b5,b2) '<' (All(b4,b5,b2)) 'xor' b3;
:: BVFUNC_2:th 32
theorem
for b1 being non empty set
for b2 being Element of bool PARTITIONS b1
for b3, b4 being Element of Funcs(b1,BOOLEAN)
for b5 being a_partition of b1
st b3 is_independent_of b5,b2
holds All(b3 'eqv' b4,b5,b2) '<' b3 'eqv' All(b4,b5,b2);
:: BVFUNC_2:th 33
theorem
for b1 being non empty set
for b2 being Element of bool PARTITIONS b1
for b3, b4 being Element of Funcs(b1,BOOLEAN)
for b5 being a_partition of b1
st b3 is_independent_of b5,b2
holds All(b4 'eqv' b3,b5,b2) '<' (All(b4,b5,b2)) 'eqv' b3;
:: BVFUNC_2:th 34
theorem
for b1 being non empty set
for b2 being Element of bool PARTITIONS b1
for b3, b4 being Element of Funcs(b1,BOOLEAN)
for b5 being a_partition of b1
st b3 is_independent_of b5,b2
holds Ex(b3 'or' b4,b5,b2) = b3 'or' Ex(b4,b5,b2);
:: BVFUNC_2:th 35
theorem
for b1 being non empty set
for b2 being Element of bool PARTITIONS b1
for b3, b4 being Element of Funcs(b1,BOOLEAN)
for b5 being a_partition of b1
st b3 is_independent_of b5,b2
holds Ex(b4 'or' b3,b5,b2) = (Ex(b4,b5,b2)) 'or' b3;
:: BVFUNC_2:th 36
theorem
for b1 being non empty set
for b2 being Element of bool PARTITIONS b1
for b3, b4 being Element of Funcs(b1,BOOLEAN)
for b5 being a_partition of b1
st b3 is_independent_of b5,b2
holds Ex(b3 '&' b4,b5,b2) = b3 '&' Ex(b4,b5,b2);
:: BVFUNC_2:th 37
theorem
for b1 being non empty set
for b2 being Element of bool PARTITIONS b1
for b3, b4 being Element of Funcs(b1,BOOLEAN)
for b5 being a_partition of b1
st b3 is_independent_of b5,b2
holds Ex(b4 '&' b3,b5,b2) = (Ex(b4,b5,b2)) '&' b3;
:: BVFUNC_2:th 38
theorem
for b1 being non empty set
for b2 being Element of bool PARTITIONS b1
for b3, b4 being Element of Funcs(b1,BOOLEAN)
for b5 being a_partition of b1 holds
b3 'imp' Ex(b4,b5,b2) '<' Ex(b3 'imp' b4,b5,b2);
:: BVFUNC_2:th 39
theorem
for b1 being non empty set
for b2 being Element of bool PARTITIONS b1
for b3, b4 being Element of Funcs(b1,BOOLEAN)
for b5 being a_partition of b1 holds
(Ex(b3,b5,b2)) 'imp' b4 '<' Ex(b3 'imp' b4,b5,b2);
:: BVFUNC_2:th 40
theorem
for b1 being non empty set
for b2 being Element of bool PARTITIONS b1
for b3, b4 being Element of Funcs(b1,BOOLEAN)
for b5 being a_partition of b1
st b3 is_independent_of b5,b2
holds b3 'xor' Ex(b4,b5,b2) '<' Ex(b3 'xor' b4,b5,b2);
:: BVFUNC_2:th 41
theorem
for b1 being non empty set
for b2 being Element of bool PARTITIONS b1
for b3, b4 being Element of Funcs(b1,BOOLEAN)
for b5 being a_partition of b1
st b3 is_independent_of b5,b2
holds (Ex(b4,b5,b2)) 'xor' b3 '<' Ex(b4 'xor' b3,b5,b2);