Article FILTER_1, MML version 4.99.1005
:: FILTER_1:th 1
theorem
for b1 being non empty Lattice-like LattStr
for b2, b3 being Filter of b1 holds
b2 /\ b3 is Filter of b1;
:: FILTER_1:th 2
theorem
for b1 being non empty Lattice-like LattStr
for b2, b3 being Element of the carrier of b1
st <.b2.) = <.b3.)
holds b2 = b3;
:: FILTER_1:funcnot 1 => FILTER_1:func 1
definition
let a1 be non empty Lattice-like LattStr;
let a2, a3 be Filter of a1;
redefine func a2 /\ a3 -> Filter of a1;
commutativity;
:: for a1 being non empty Lattice-like LattStr
:: for a2, a3 being Filter of a1 holds
:: a2 /\ a3 = a3 /\ a2;
idempotence;
:: for a1 being non empty Lattice-like LattStr
:: for a2 being Filter of a1 holds
:: a2 /\ a2 = a2;
end;
:: FILTER_1:modenot 1 => FILTER_1:mode 1
definition
let a1 be non empty set;
let a2 be Relation-like set;
mode UnOp of A1,A2 -> Function-like quasi_total Relation of a1,a1 means
for b1, b2 being Element of a1
st [b1,b2] in a2
holds [it . b1,it . b2] in a2;
end;
:: FILTER_1:dfs 1
definiens
let a1 be non empty set;
let a2 be Relation-like set;
let a3 be Function-like quasi_total Relation of a1,a1;
To prove
a3 is UnOp of a1,a2
it is sufficient to prove
thus for b1, b2 being Element of a1
st [b1,b2] in a2
holds [a3 . b1,a3 . b2] in a2;
:: FILTER_1:def 1
theorem
for b1 being non empty set
for b2 being Relation-like set
for b3 being Function-like quasi_total Relation of b1,b1 holds
b3 is UnOp of b1,b2
iff
for b4, b5 being Element of b1
st [b4,b5] in b2
holds [b3 . b4,b3 . b5] in b2;
:: FILTER_1:modenot 2 => FILTER_1:mode 2
definition
let a1 be non empty set;
let a2 be Relation-like set;
mode BinOp of A1,A2 -> Function-like quasi_total Relation of [:a1,a1:],a1 means
for b1, b2, b3, b4 being Element of a1
st [b1,b2] in a2 & [b3,b4] in a2
holds [it .(b1,b3),it .(b2,b4)] in a2;
end;
:: FILTER_1:dfs 2
definiens
let a1 be non empty set;
let a2 be Relation-like set;
let a3 be Function-like quasi_total Relation of [:a1,a1:],a1;
To prove
a3 is BinOp of a1,a2
it is sufficient to prove
thus for b1, b2, b3, b4 being Element of a1
st [b1,b2] in a2 & [b3,b4] in a2
holds [a3 .(b1,b3),a3 .(b2,b4)] in a2;
:: FILTER_1:def 2
theorem
for b1 being non empty set
for b2 being Relation-like set
for b3 being Function-like quasi_total Relation of [:b1,b1:],b1 holds
b3 is BinOp of b1,b2
iff
for b4, b5, b6, b7 being Element of b1
st [b4,b5] in b2 & [b6,b7] in b2
holds [b3 .(b4,b6),b3 .(b5,b7)] in b2;
:: FILTER_1:modenot 3
definition
let a1 be non empty set;
let a2 be symmetric transitive total Relation of a1,a1;
mode UnOp of a2 is UnOp of a1,a2;
end;
:: FILTER_1:modenot 4
definition
let a1 be non empty set;
let a2 be symmetric transitive total Relation of a1,a1;
mode BinOp of a2 is BinOp of a1,a2;
end;
:: FILTER_1:funcnot 2 => FILTER_1:func 2
definition
let a1 be non empty set;
let a2 be symmetric transitive total Relation of a1,a1;
let a3 be Function-like quasi_total Relation of a1,a1;
assume a3 is UnOp of a1,a2;
func A3 /\/ A2 -> Function-like quasi_total Relation of Class a2,Class a2 means
for b1, b2 being set
st b1 in Class a2 & b2 in b1
holds it . b1 = Class(a2,a3 . b2);
end;
:: FILTER_1:def 3
theorem
for b1 being non empty set
for b2 being symmetric transitive total Relation of b1,b1
for b3 being Function-like quasi_total Relation of b1,b1
st b3 is UnOp of b1,b2
for b4 being Function-like quasi_total Relation of Class b2,Class b2 holds
b4 = b3 /\/ b2
iff
for b5, b6 being set
st b5 in Class b2 & b6 in b5
holds b4 . b5 = Class(b2,b3 . b6);
:: FILTER_1:funcnot 3 => FILTER_1:func 3
definition
let a1 be non empty set;
let a2 be symmetric transitive total Relation of a1,a1;
let a3 be Function-like quasi_total Relation of [:a1,a1:],a1;
assume a3 is BinOp of a1,a2;
func A3 /\/ A2 -> Function-like quasi_total Relation of [:Class a2,Class a2:],Class a2 means
for b1, b2, b3, b4 being set
st b1 in Class a2 & b2 in Class a2 & b3 in b1 & b4 in b2
holds it .(b1,b2) = Class(a2,a3 .(b3,b4));
end;
:: FILTER_1:def 4
theorem
for b1 being non empty set
for b2 being symmetric transitive total Relation of b1,b1
for b3 being Function-like quasi_total Relation of [:b1,b1:],b1
st b3 is BinOp of b1,b2
for b4 being Function-like quasi_total Relation of [:Class b2,Class b2:],Class b2 holds
b4 = b3 /\/ b2
iff
for b5, b6, b7, b8 being set
st b5 in Class b2 & b6 in Class b2 & b7 in b5 & b8 in b6
holds b4 .(b5,b6) = Class(b2,b3 .(b7,b8));
:: FILTER_1:th 3
theorem
for b1 being non empty set
for b2 being symmetric transitive total Relation of b1,b1
for b3, b4 being Element of b1
for b5 being BinOp of b1,b2 holds
(b5 /\/ b2) .(Class(b2,b3),Class(b2,b4)) = Class(b2,b5 .(b3,b4));
:: FILTER_1:sch 1
scheme FILTER_1:sch 1
{F1 -> non empty set,
F2 -> symmetric transitive total Relation of F1(),F1()}:
for b1 being Element of Class F2() holds
P1[b1]
provided
for b1 being Element of F1() holds
P1[EqClass(F2(),b1)];
:: FILTER_1:sch 2
scheme FILTER_1:sch 2
{F1 -> non empty set,
F2 -> symmetric transitive total Relation of F1(),F1()}:
for b1, b2 being Element of Class F2() holds
P1[b1, b2]
provided
for b1, b2 being Element of F1() holds
P1[EqClass(F2(),b1), EqClass(F2(),b2)];
:: FILTER_1:sch 3
scheme FILTER_1:sch 3
{F1 -> non empty set,
F2 -> symmetric transitive total Relation of F1(),F1()}:
for b1, b2, b3 being Element of Class F2() holds
P1[b1, b2, b3]
provided
for b1, b2, b3 being Element of F1() holds
P1[EqClass(F2(),b1), EqClass(F2(),b2), EqClass(F2(),b3)];
:: FILTER_1:th 4
theorem
for b1 being non empty set
for b2 being symmetric transitive total Relation of b1,b1
for b3 being BinOp of b1,b2
st b3 is commutative(b1)
holds b3 /\/ b2 is commutative(Class b2);
:: FILTER_1:th 5
theorem
for b1 being non empty set
for b2 being symmetric transitive total Relation of b1,b1
for b3 being BinOp of b1,b2
st b3 is associative(b1)
holds b3 /\/ b2 is associative(Class b2);
:: FILTER_1:th 6
theorem
for b1 being non empty set
for b2 being symmetric transitive total Relation of b1,b1
for b3 being Element of b1
for b4 being BinOp of b1,b2
st b3 is_a_left_unity_wrt b4
holds EqClass(b2,b3) is_a_left_unity_wrt b4 /\/ b2;
:: FILTER_1:th 7
theorem
for b1 being non empty set
for b2 being symmetric transitive total Relation of b1,b1
for b3 being Element of b1
for b4 being BinOp of b1,b2
st b3 is_a_right_unity_wrt b4
holds EqClass(b2,b3) is_a_right_unity_wrt b4 /\/ b2;
:: FILTER_1:th 8
theorem
for b1 being non empty set
for b2 being symmetric transitive total Relation of b1,b1
for b3 being Element of b1
for b4 being BinOp of b1,b2
st b3 is_a_unity_wrt b4
holds EqClass(b2,b3) is_a_unity_wrt b4 /\/ b2;
:: FILTER_1:th 9
theorem
for b1 being non empty set
for b2 being symmetric transitive total Relation of b1,b1
for b3, b4 being BinOp of b1,b2
st b3 is_left_distributive_wrt b4
holds b3 /\/ b2 is_left_distributive_wrt b4 /\/ b2;
:: FILTER_1:th 10
theorem
for b1 being non empty set
for b2 being symmetric transitive total Relation of b1,b1
for b3, b4 being BinOp of b1,b2
st b3 is_right_distributive_wrt b4
holds b3 /\/ b2 is_right_distributive_wrt b4 /\/ b2;
:: FILTER_1:th 11
theorem
for b1 being non empty set
for b2 being symmetric transitive total Relation of b1,b1
for b3, b4 being BinOp of b1,b2
st b3 is_distributive_wrt b4
holds b3 /\/ b2 is_distributive_wrt b4 /\/ b2;
:: FILTER_1:th 12
theorem
for b1 being non empty set
for b2 being symmetric transitive total Relation of b1,b1
for b3, b4 being BinOp of b1,b2
st b3 absorbs b4
holds b3 /\/ b2 absorbs b4 /\/ b2;
:: FILTER_1:th 13
theorem
for b1 being non empty Lattice-like implicative LattStr
for b2 being Filter of b1 holds
the L_join of b1 is BinOp of the carrier of b1,equivalence_wrt b2;
:: FILTER_1:th 14
theorem
for b1 being non empty Lattice-like implicative LattStr
for b2 being Filter of b1 holds
the L_meet of b1 is BinOp of the carrier of b1,equivalence_wrt b2;
:: FILTER_1:funcnot 4 => FILTER_1:func 4
definition
let a1 be non empty Lattice-like LattStr;
let a2 be Filter of a1;
assume a1 is non empty Lattice-like implicative LattStr;
func A1 /\/ A2 -> non empty strict Lattice-like LattStr means
for b1 being symmetric transitive total Relation of the carrier of a1,the carrier of a1
st b1 = equivalence_wrt a2
holds it = LattStr(#Class b1,(the L_join of a1) /\/ b1,(the L_meet of a1) /\/ b1#);
end;
:: FILTER_1:def 5
theorem
for b1 being non empty Lattice-like LattStr
for b2 being Filter of b1
st b1 is non empty Lattice-like implicative LattStr
for b3 being non empty strict Lattice-like LattStr holds
b3 = b1 /\/ b2
iff
for b4 being symmetric transitive total Relation of the carrier of b1,the carrier of b1
st b4 = equivalence_wrt b2
holds b3 = LattStr(#Class b4,(the L_join of b1) /\/ b4,(the L_meet of b1) /\/ b4#);
:: FILTER_1:funcnot 5 => FILTER_1:func 5
definition
let a1 be non empty Lattice-like LattStr;
let a2 be Filter of a1;
let a3 be Element of the carrier of a1;
assume a1 is non empty Lattice-like implicative LattStr;
func A3 /\/ A2 -> Element of the carrier of a1 /\/ a2 means
for b1 being symmetric transitive total Relation of the carrier of a1,the carrier of a1
st b1 = equivalence_wrt a2
holds it = Class(b1,a3);
end;
:: FILTER_1:def 6
theorem
for b1 being non empty Lattice-like LattStr
for b2 being Filter of b1
for b3 being Element of the carrier of b1
st b1 is non empty Lattice-like implicative LattStr
for b4 being Element of the carrier of b1 /\/ b2 holds
b4 = b3 /\/ b2
iff
for b5 being symmetric transitive total Relation of the carrier of b1,the carrier of b1
st b5 = equivalence_wrt b2
holds b4 = Class(b5,b3);
:: FILTER_1:th 15
theorem
for b1 being non empty Lattice-like implicative LattStr
for b2 being Filter of b1
for b3, b4 being Element of the carrier of b1 holds
(b3 /\/ b2) "\/" (b4 /\/ b2) = (b3 "\/" b4) /\/ b2 &
(b3 /\/ b2) "/\" (b4 /\/ b2) = (b3 "/\" b4) /\/ b2;
:: FILTER_1:th 16
theorem
for b1 being non empty Lattice-like implicative LattStr
for b2 being Filter of b1
for b3, b4 being Element of the carrier of b1 holds
b3 /\/ b2 [= b4 /\/ b2
iff
b3 => b4 in b2;
:: FILTER_1:th 17
theorem
for b1 being non empty Lattice-like implicative LattStr
for b2, b3, b4 being Element of the carrier of b1 holds
(b2 "/\" b3) => b4 = b2 => (b3 => b4);
:: FILTER_1:th 18
theorem
for b1 being non empty Lattice-like implicative LattStr
for b2 being Filter of b1
st b1 is lower-bounded
holds b1 /\/ b2 is non empty Lattice-like lower-bounded LattStr &
Bottom (b1 /\/ b2) = (Bottom b1) /\/ b2;
:: FILTER_1:th 19
theorem
for b1 being non empty Lattice-like implicative LattStr
for b2 being Filter of b1 holds
b1 /\/ b2 is non empty Lattice-like upper-bounded LattStr &
Top (b1 /\/ b2) = (Top b1) /\/ b2;
:: FILTER_1:th 20
theorem
for b1 being non empty Lattice-like implicative LattStr
for b2 being Filter of b1 holds
b1 /\/ b2 is implicative;
:: FILTER_1:th 21
theorem
for b1 being non empty Lattice-like Boolean LattStr
for b2 being Filter of b1 holds
b1 /\/ b2 is non empty Lattice-like Boolean LattStr;
:: FILTER_1:funcnot 6 => FILTER_1:func 6
definition
let a1, a2 be set;
let a3 be Function-like quasi_total Relation of [:a1,a1:],a1;
let a4 be Function-like quasi_total Relation of [:a2,a2:],a2;
redefine func |:a3, a4:| -> Function-like quasi_total Relation of [:[:a1,a2:],[:a1,a2:]:],[:a1,a2:];
end;
:: FILTER_1:th 22
theorem
for b1, b2 being non empty set
for b3, b4 being Element of b1
for b5, b6 being Element of b2
for b7 being Function-like quasi_total Relation of [:b1,b1:],b1
for b8 being Function-like quasi_total Relation of [:b2,b2:],b2 holds
|:b7,b8:| .([b3,b5],[b4,b6]) = [b7 .(b3,b4),b8 .(b5,b6)];
:: FILTER_1:sch 4
scheme FILTER_1:sch 4
{F1 -> non empty set,
F2 -> non empty set}:
for b1 being Element of [:F1(),F2():] holds
P1[b1]
provided
for b1 being Element of F1()
for b2 being Element of F2() holds
P1[[b1,b2]];
:: FILTER_1:sch 5
scheme FILTER_1:sch 5
{F1 -> non empty set,
F2 -> non empty set}:
for b1, b2 being Element of [:F1(),F2():] holds
P1[b1, b2]
provided
for b1, b2 being Element of F1()
for b3, b4 being Element of F2() holds
P1[[b1,b3], [b2,b4]];
:: FILTER_1:sch 6
scheme FILTER_1:sch 6
{F1 -> non empty set,
F2 -> non empty set}:
for b1, b2, b3 being Element of [:F1(),F2():] holds
P1[b1, b2, b3]
provided
for b1, b2, b3 being Element of F1()
for b4, b5, b6 being Element of F2() holds
P1[[b1,b4], [b2,b5], [b3,b6]];
:: FILTER_1:th 23
theorem
for b1, b2 being non empty set
for b3 being Function-like quasi_total Relation of [:b1,b1:],b1
for b4 being Function-like quasi_total Relation of [:b2,b2:],b2 holds
b3 is commutative(b1) & b4 is commutative(b2)
iff
|:b3,b4:| is commutative([:b1,b2:]);
:: FILTER_1:th 24
theorem
for b1, b2 being non empty set
for b3 being Function-like quasi_total Relation of [:b1,b1:],b1
for b4 being Function-like quasi_total Relation of [:b2,b2:],b2 holds
b3 is associative(b1) & b4 is associative(b2)
iff
|:b3,b4:| is associative([:b1,b2:]);
:: FILTER_1:th 25
theorem
for b1, b2 being non empty set
for b3 being Element of b1
for b4 being Element of b2
for b5 being Function-like quasi_total Relation of [:b1,b1:],b1
for b6 being Function-like quasi_total Relation of [:b2,b2:],b2 holds
b3 is_a_left_unity_wrt b5 & b4 is_a_left_unity_wrt b6
iff
[b3,b4] is_a_left_unity_wrt |:b5,b6:|;
:: FILTER_1:th 26
theorem
for b1, b2 being non empty set
for b3 being Element of b1
for b4 being Element of b2
for b5 being Function-like quasi_total Relation of [:b1,b1:],b1
for b6 being Function-like quasi_total Relation of [:b2,b2:],b2 holds
b3 is_a_right_unity_wrt b5 & b4 is_a_right_unity_wrt b6
iff
[b3,b4] is_a_right_unity_wrt |:b5,b6:|;
:: FILTER_1:th 27
theorem
for b1, b2 being non empty set
for b3 being Element of b1
for b4 being Element of b2
for b5 being Function-like quasi_total Relation of [:b1,b1:],b1
for b6 being Function-like quasi_total Relation of [:b2,b2:],b2 holds
b3 is_a_unity_wrt b5 & b4 is_a_unity_wrt b6
iff
[b3,b4] is_a_unity_wrt |:b5,b6:|;
:: FILTER_1:th 28
theorem
for b1, b2 being non empty set
for b3, b4 being Function-like quasi_total Relation of [:b1,b1:],b1
for b5, b6 being Function-like quasi_total Relation of [:b2,b2:],b2 holds
b3 is_left_distributive_wrt b4 & b5 is_left_distributive_wrt b6
iff
|:b3,b5:| is_left_distributive_wrt |:b4,b6:|;
:: FILTER_1:th 29
theorem
for b1, b2 being non empty set
for b3, b4 being Function-like quasi_total Relation of [:b1,b1:],b1
for b5, b6 being Function-like quasi_total Relation of [:b2,b2:],b2 holds
b3 is_right_distributive_wrt b4 & b5 is_right_distributive_wrt b6
iff
|:b3,b5:| is_right_distributive_wrt |:b4,b6:|;
:: FILTER_1:th 30
theorem
for b1, b2 being non empty set
for b3, b4 being Function-like quasi_total Relation of [:b1,b1:],b1
for b5, b6 being Function-like quasi_total Relation of [:b2,b2:],b2 holds
b3 is_distributive_wrt b4 & b5 is_distributive_wrt b6
iff
|:b3,b5:| is_distributive_wrt |:b4,b6:|;
:: FILTER_1:th 31
theorem
for b1, b2 being non empty set
for b3, b4 being Function-like quasi_total Relation of [:b1,b1:],b1
for b5, b6 being Function-like quasi_total Relation of [:b2,b2:],b2 holds
b3 absorbs b4 & b5 absorbs b6
iff
|:b3,b5:| absorbs |:b4,b6:|;
:: FILTER_1:funcnot 7 => FILTER_1:func 7
definition
let a1, a2 be non empty LattStr;
func [:A1,A2:] -> strict LattStr equals
LattStr(#[:the carrier of a1,the carrier of a2:],|:the L_join of a1,the L_join of a2:|,|:the L_meet of a1,the L_meet of a2:|#);
end;
:: FILTER_1:def 7
theorem
for b1, b2 being non empty LattStr holds
[:b1,b2:] = LattStr(#[:the carrier of b1,the carrier of b2:],|:the L_join of b1,the L_join of b2:|,|:the L_meet of b1,the L_meet of b2:|#);
:: FILTER_1:funcreg 1
registration
let a1, a2 be non empty LattStr;
cluster [:a1,a2:] -> non empty strict;
end;
:: FILTER_1:funcnot 8 => FILTER_1:func 8
definition
let a1 be non empty Lattice-like LattStr;
func LattRel A1 -> Relation-like set equals
{[b1,b2] where b1 is Element of the carrier of a1, b2 is Element of the carrier of a1: b1 [= b2};
end;
:: FILTER_1:def 8
theorem
for b1 being non empty Lattice-like LattStr holds
LattRel b1 = {[b2,b3] where b2 is Element of the carrier of b1, b3 is Element of the carrier of b1: b2 [= b3};
:: FILTER_1:th 32
theorem
for b1 being non empty Lattice-like LattStr
for b2, b3 being Element of the carrier of b1 holds
[b2,b3] in LattRel b1
iff
b2 [= b3;
:: FILTER_1:th 33
theorem
for b1 being non empty Lattice-like LattStr holds
proj1 LattRel b1 = the carrier of b1 & proj2 LattRel b1 = the carrier of b1 & field LattRel b1 = the carrier of b1;
:: FILTER_1:prednot 1 => FILTER_1:pred 1
definition
let a1, a2 be non empty Lattice-like LattStr;
pred A1,A2 are_isomorphic means
LattRel a1,LattRel a2 are_isomorphic;
symmetry;
:: for a1, a2 being non empty Lattice-like LattStr
:: st a1,a2 are_isomorphic
:: holds a2,a1 are_isomorphic;
reflexivity;
:: for a1 being non empty Lattice-like LattStr holds
:: a1,a1 are_isomorphic;
end;
:: FILTER_1:dfs 9
definiens
let a1, a2 be non empty Lattice-like LattStr;
To prove
a1,a2 are_isomorphic
it is sufficient to prove
thus LattRel a1,LattRel a2 are_isomorphic;
:: FILTER_1:def 9
theorem
for b1, b2 being non empty Lattice-like LattStr holds
b1,b2 are_isomorphic
iff
LattRel b1,LattRel b2 are_isomorphic;
:: FILTER_1:funcreg 2
registration
let a1, a2 be non empty Lattice-like LattStr;
cluster [:a1,a2:] -> strict Lattice-like;
end;
:: FILTER_1:th 34
theorem
for b1, b2, b3 being non empty Lattice-like LattStr
st b1,b2 are_isomorphic & b2,b3 are_isomorphic
holds b1,b3 are_isomorphic;
:: FILTER_1:th 35
theorem
for b1, b2 being non empty LattStr
st [:b1,b2:] is non empty Lattice-like LattStr
holds b1 is non empty Lattice-like LattStr & b2 is non empty Lattice-like LattStr;
:: FILTER_1:funcnot 9 => FILTER_1:func 9
definition
let a1, a2 be non empty Lattice-like LattStr;
let a3 be Element of the carrier of a1;
let a4 be Element of the carrier of a2;
redefine func [a3, a4] -> Element of the carrier of [:a1,a2:];
end;
:: FILTER_1:th 36
theorem
for b1, b2 being non empty Lattice-like LattStr
for b3, b4 being Element of the carrier of b1
for b5, b6 being Element of the carrier of b2 holds
[b3,b5] "\/" [b4,b6] = [b3 "\/" b4,b5 "\/" b6] &
[b3,b5] "/\" [b4,b6] = [b3 "/\" b4,b5 "/\" b6];
:: FILTER_1:th 37
theorem
for b1, b2 being non empty Lattice-like LattStr
for b3, b4 being Element of the carrier of b1
for b5, b6 being Element of the carrier of b2 holds
[b3,b5] [= [b4,b6]
iff
b3 [= b4 & b5 [= b6;
:: FILTER_1:th 38
theorem
for b1, b2 being non empty Lattice-like LattStr holds
b1 is modular & b2 is modular
iff
[:b1,b2:] is modular;
:: FILTER_1:th 39
theorem
for b1, b2 being non empty Lattice-like LattStr holds
b1 is non empty Lattice-like distributive LattStr & b2 is non empty Lattice-like distributive LattStr
iff
[:b1,b2:] is non empty Lattice-like distributive LattStr;
:: FILTER_1:th 40
theorem
for b1, b2 being non empty Lattice-like LattStr holds
b1 is lower-bounded & b2 is lower-bounded
iff
[:b1,b2:] is lower-bounded;
:: FILTER_1:th 41
theorem
for b1, b2 being non empty Lattice-like LattStr holds
b1 is upper-bounded & b2 is upper-bounded
iff
[:b1,b2:] is upper-bounded;
:: FILTER_1:th 42
theorem
for b1, b2 being non empty Lattice-like LattStr holds
b1 is bounded & b2 is bounded
iff
[:b1,b2:] is bounded;
:: FILTER_1:th 43
theorem
for b1, b2 being non empty Lattice-like LattStr
st b1 is non empty Lattice-like lower-bounded LattStr & b2 is non empty Lattice-like lower-bounded LattStr
holds Bottom [:b1,b2:] = [Bottom b1,Bottom b2];
:: FILTER_1:th 44
theorem
for b1, b2 being non empty Lattice-like LattStr
st b1 is non empty Lattice-like upper-bounded LattStr & b2 is non empty Lattice-like upper-bounded LattStr
holds Top [:b1,b2:] = [Top b1,Top b2];
:: FILTER_1:th 45
theorem
for b1, b2 being non empty Lattice-like LattStr
for b3, b4 being Element of the carrier of b1
for b5, b6 being Element of the carrier of b2
st b1 is non empty Lattice-like bounded LattStr & b2 is non empty Lattice-like bounded LattStr
holds b3 is_a_complement_of b4 & b5 is_a_complement_of b6
iff
[b3,b5] is_a_complement_of [b4,b6];
:: FILTER_1:th 46
theorem
for b1, b2 being non empty Lattice-like LattStr holds
b1 is non empty Lattice-like bounded complemented LattStr &
b2 is non empty Lattice-like bounded complemented LattStr
iff
[:b1,b2:] is non empty Lattice-like bounded complemented LattStr;
:: FILTER_1:th 47
theorem
for b1, b2 being non empty Lattice-like LattStr holds
b1 is non empty Lattice-like Boolean LattStr & b2 is non empty Lattice-like Boolean LattStr
iff
[:b1,b2:] is non empty Lattice-like Boolean LattStr;
:: FILTER_1:th 48
theorem
for b1, b2 being non empty Lattice-like LattStr holds
b1 is implicative & b2 is implicative
iff
[:b1,b2:] is implicative;
:: FILTER_1:th 49
theorem
for b1, b2 being non empty Lattice-like LattStr holds
[:b1,b2:] .: = [:b1 .:,b2 .::];
:: FILTER_1:th 50
theorem
for b1, b2 being non empty Lattice-like LattStr holds
[:b1,b2:],[:b2,b1:] are_isomorphic;
:: FILTER_1:th 51
theorem
for b1 being non empty Lattice-like Boolean LattStr
for b2, b3 being Element of the carrier of b1 holds
b2 <=> b3 = (b2 "/\" b3) "\/" (b2 ` "/\" (b3 `));
:: FILTER_1:th 52
theorem
for b1 being non empty Lattice-like Boolean LattStr
for b2, b3 being Element of the carrier of b1 holds
(b2 => b3) ` = b2 "/\" (b3 `) &
(b2 <=> b3) ` = (b2 "/\" (b3 `)) "\/" (b2 ` "/\" b3) &
(b2 <=> b3) ` = b2 <=> (b3 `) &
(b2 <=> b3) ` = b2 ` <=> b3;
:: FILTER_1:th 53
theorem
for b1 being non empty Lattice-like Boolean LattStr
for b2, b3, b4 being Element of the carrier of b1
st b2 <=> b3 = b2 <=> b4
holds b3 = b4;
:: FILTER_1:th 54
theorem
for b1 being non empty Lattice-like Boolean LattStr
for b2, b3 being Element of the carrier of b1 holds
b2 <=> (b2 <=> b3) = b3;
:: FILTER_1:th 55
theorem
for b1 being non empty Lattice-like implicative LattStr
for b2, b3 being Element of the carrier of b1 holds
(b2 "\/" b3) => b2 = b3 => b2 & b2 => (b2 "/\" b3) = b2 => b3;
:: FILTER_1:th 56
theorem
for b1 being non empty Lattice-like implicative LattStr
for b2, b3, b4 being Element of the carrier of b1 holds
b2 => b3 [= b2 => (b3 "\/" b4) & b2 => b3 [= (b2 "/\" b4) => b3 & b2 => b3 [= b2 => (b4 "\/" b3) & b2 => b3 [= (b4 "/\" b2) => b3;
:: FILTER_1:th 57
theorem
for b1 being non empty Lattice-like implicative LattStr
for b2, b3, b4 being Element of the carrier of b1 holds
(b2 => b3) "/\" (b4 => b3) [= (b2 "\/" b4) => b3;
:: FILTER_1:th 58
theorem
for b1 being non empty Lattice-like implicative LattStr
for b2, b3, b4 being Element of the carrier of b1 holds
(b2 => b3) "/\" (b2 => b4) [= b2 => (b3 "/\" b4);
:: FILTER_1:th 59
theorem
for b1 being non empty Lattice-like implicative LattStr
for b2 being Filter of b1
for b3, b4, b5, b6 being Element of the carrier of b1
st b3 <=> b4 in b2 & b5 <=> b6 in b2
holds (b3 "\/" b5) <=> (b4 "\/" b6) in b2 & (b3 "/\" b5) <=> (b4 "/\" b6) in b2;
:: FILTER_1:th 60
theorem
for b1 being non empty Lattice-like implicative LattStr
for b2 being Filter of b1
for b3, b4, b5 being Element of the carrier of b1
st b3 in Class(equivalence_wrt b2,b4) & b5 in Class(equivalence_wrt b2,b4)
holds b3 "\/" b5 in Class(equivalence_wrt b2,b4) & b3 "/\" b5 in Class(equivalence_wrt b2,b4);
:: FILTER_1:th 61
theorem
for b1 being non empty Lattice-like Boolean LattStr
for b2, b3 being Element of the carrier of b1 holds
b2 "\/" (b2 <=> b3) in Class(equivalence_wrt <.b3.),b2) &
(for b4 being Element of the carrier of b1
st b4 in Class(equivalence_wrt <.b3.),b2)
holds b4 [= b2 "\/" (b2 <=> b3));
:: FILTER_1:th 62
theorem
for b1 being non empty Lattice-like Boolean LattStr
for b2 being Element of the carrier of b1 holds
b1,[:b1 /\/ <.b2.),latt <.b2.):] are_isomorphic;