Article MSSUBLAT, MML version 4.99.1005

:: MSSUBLAT:th 1
theorem
for b1 being set holds
   (*--> b1) . 0 = {};

:: MSSUBLAT:th 2
theorem
for b1 being set holds
   (*--> b1) . 1 = <*b1*>;

:: MSSUBLAT:th 3
theorem
for b1 being set holds
   (*--> b1) . 2 = <*b1,b1*>;

:: MSSUBLAT:th 4
theorem
for b1 being set holds
   (*--> b1) . 3 = <*b1,b1,b1*>;

:: MSSUBLAT:th 5
theorem
for b1 being natural set
for b2 being FinSequence of {0} holds
      b2 = b1 |-> 0
   iff
      len b2 = b1;

:: MSSUBLAT:th 6
theorem
for b1 being natural set
for b2 being Relation-like Function-like FinSequence-like set
      st b2 = (*--> 0) . b1
   holds len b2 = b1;

:: MSSUBLAT:th 7
theorem
for b1, b2 being non empty partial quasi_total non-empty UAStr
      st b1 is SubAlgebra of b2
   holds MSSign b1 = MSSign b2;

:: MSSUBLAT:th 8
theorem
for b1, b2 being non empty partial quasi_total non-empty UAStr
   st b1 is SubAlgebra of b2
for b3 being ManySortedSubset of the Sorts of MSAlg b2
   st b3 = the Sorts of MSAlg b1
for b4 being Element of the OperSymbols of MSSign b2
for b5 being Element of the OperSymbols of MSSign b1
      st b5 = b4
   holds Den(b5,MSAlg b1) = (Den(b4,MSAlg b2)) | Args(b5,MSAlg b1);

:: MSSUBLAT:th 9
theorem
for b1, b2 being non empty partial quasi_total non-empty UAStr
      st b1 is SubAlgebra of b2
   holds the Sorts of MSAlg b1 is ManySortedSubset of the Sorts of MSAlg b2;

:: MSSUBLAT:th 10
theorem
for b1, b2 being non empty partial quasi_total non-empty UAStr
   st b1 is SubAlgebra of b2
for b3 being ManySortedSubset of the Sorts of MSAlg b2
      st b3 = the Sorts of MSAlg b1
   holds b3 is opers_closed(MSSign b2, MSAlg b2);

:: MSSUBLAT:th 11
theorem
for b1, b2 being non empty partial quasi_total non-empty UAStr
   st b1 is SubAlgebra of b2
for b3 being ManySortedSubset of the Sorts of MSAlg b2
      st b3 = the Sorts of MSAlg b1
   holds the Charact of MSAlg b1 = Opers(MSAlg b2,b3);

:: MSSUBLAT:th 12
theorem
for b1, b2 being non empty partial quasi_total non-empty UAStr
      st b1 is SubAlgebra of b2
   holds MSAlg b1 is MSSubAlgebra of MSAlg b2;

:: MSSUBLAT:th 13
theorem
for b1, b2 being non empty partial quasi_total non-empty UAStr
      st MSAlg b1 is MSSubAlgebra of MSAlg b2
   holds the carrier of b1 is Element of bool the carrier of b2;

:: MSSUBLAT:th 14
theorem
for b1, b2 being non empty partial quasi_total non-empty UAStr
   st MSAlg b1 is MSSubAlgebra of MSAlg b2
for b3 being non empty Element of bool the carrier of b2
      st b3 = the carrier of b1
   holds b3 is opers_closed(b2);

:: MSSUBLAT:th 15
theorem
for b1, b2 being non empty partial quasi_total non-empty UAStr
   st MSAlg b1 is MSSubAlgebra of MSAlg b2
for b3 being non empty Element of bool the carrier of b2
      st b3 = the carrier of b1
   holds the charact of b1 = Opers(b2,b3);

:: MSSUBLAT:th 16
theorem
for b1, b2 being non empty partial quasi_total non-empty UAStr
      st MSAlg b1 is MSSubAlgebra of MSAlg b2
   holds b1 is SubAlgebra of b2;

:: MSSUBLAT:th 17
theorem
for b1 being non empty trivial non void segmental ManySortedSign
for b2 being non-empty MSAlgebra over b1
for b3 being non-empty MSSubAlgebra of b2 holds
   the carrier of 1-Alg b3 is Element of bool the carrier of 1-Alg b2;

:: MSSUBLAT:th 18
theorem
for b1 being non empty trivial non void segmental ManySortedSign
for b2 being non-empty MSAlgebra over b1
for b3 being non-empty MSSubAlgebra of b2
for b4 being non empty Element of bool the carrier of 1-Alg b2
      st b4 = the carrier of 1-Alg b3
   holds b4 is opers_closed(1-Alg b2);

:: MSSUBLAT:th 19
theorem
for b1 being non empty trivial non void segmental ManySortedSign
for b2 being non-empty MSAlgebra over b1
for b3 being non-empty MSSubAlgebra of b2
for b4 being non empty Element of bool the carrier of 1-Alg b2
      st b4 = the carrier of 1-Alg b3
   holds the charact of 1-Alg b3 = Opers(1-Alg b2,b4);

:: MSSUBLAT:th 20
theorem
for b1 being non empty trivial non void segmental ManySortedSign
for b2 being non-empty MSAlgebra over b1
for b3 being non-empty MSSubAlgebra of b2 holds
   1-Alg b3 is SubAlgebra of 1-Alg b2;

:: MSSUBLAT:th 21
theorem
for b1 being non empty non void ManySortedSign
for b2, b3 being MSAlgebra over b1 holds
   b2 is MSSubAlgebra of b3
iff
   b2 is MSSubAlgebra of MSAlgebra(#the Sorts of b3,the Charact of b3#);

:: MSSUBLAT:th 22
theorem
for b1, b2 being non empty partial quasi_total non-empty UAStr holds
   signature b1 = signature b2
iff
   MSSign b1 = MSSign b2;

:: MSSUBLAT:th 23
theorem
for b1 being non empty trivial non void segmental ManySortedSign
for b2 being non-empty MSAlgebra over b1
      st the carrier of b1 = {0}
   holds MSSign 1-Alg b2 = ManySortedSign(#the carrier of b1,the OperSymbols of b1,the Arity of b1,the ResultSort of b1#);

:: MSSUBLAT:th 24
theorem
for b1 being non empty trivial non void segmental ManySortedSign
for b2, b3 being non-empty MSAlgebra over b1
      st the carrier of b1 = {0} & 1-Alg b2 = 1-Alg b3
   holds MSAlgebra(#the Sorts of b2,the Charact of b2#) = MSAlgebra(#the Sorts of b3,the Charact of b3#);

:: MSSUBLAT:th 25
theorem
for b1 being non empty trivial non void segmental ManySortedSign
for b2 being non-empty MSAlgebra over b1
      st the carrier of b1 = {0}
   holds the Sorts of b2 = the Sorts of MSAlg 1-Alg b2;

:: MSSUBLAT:th 26
theorem
for b1 being non empty trivial non void segmental ManySortedSign
for b2 being non-empty MSAlgebra over b1
      st the carrier of b1 = {0}
   holds MSAlg 1-Alg b2 = MSAlgebra(#the Sorts of b2,the Charact of b2#);

:: MSSUBLAT:th 27
theorem
for b1 being non empty partial quasi_total non-empty UAStr
for b2 being strict non-empty MSSubAlgebra of MSAlg b1
      st the carrier of MSSign b1 = {0}
   holds 1-Alg b2 is SubAlgebra of b1;

:: MSSUBLAT:th 28
theorem
for b1 being non empty partial quasi_total non-empty UAStr
for b2, b3 being strict SubAlgebra of b1
for b4, b5 being strict non-empty MSSubAlgebra of MSAlg b1
      st b4 = MSAlg b2 & b5 = MSAlg b3
   holds (the Sorts of b4) \/ the Sorts of b5 = 0 .--> ((the carrier of b2) \/ the carrier of b3);

:: MSSUBLAT:th 29
theorem
for b1 being non empty partial quasi_total non-empty UAStr
for b2, b3 being strict non-empty SubAlgebra of b1
for b4, b5 being strict non-empty MSSubAlgebra of MSAlg b1
      st b4 = MSAlg b2 & b5 = MSAlg b3
   holds (the Sorts of b4) /\ the Sorts of b5 = 0 .--> ((the carrier of b2) /\ the carrier of b3);

:: MSSUBLAT:th 30
theorem
for b1 being non empty strict partial quasi_total non-empty UAStr
for b2, b3 being strict non-empty SubAlgebra of b1
for b4, b5 being strict non-empty MSSubAlgebra of MSAlg b1
      st b4 = MSAlg b2 & b5 = MSAlg b3
   holds MSAlg (b2 "\/" b3) = b4 "\/" b5;

:: MSSUBLAT:funcreg 1
registration
  let a1 be non empty partial quasi_total non-empty with_const_op UAStr;
  cluster MSSign a1 -> trivial strict non void segmental all-with_const_op;
end;

:: MSSUBLAT:th 31
theorem
for b1 being non empty partial quasi_total non-empty with_const_op UAStr
for b2, b3 being strict non-empty SubAlgebra of b1
for b4, b5 being strict non-empty MSSubAlgebra of MSAlg b1
      st b4 = MSAlg b2 & b5 = MSAlg b3
   holds MSAlg (b2 /\ b3) = b4 /\ b5;

:: MSSUBLAT:funcreg 2
registration
  let a1 be quasi_total UAStr;
  cluster UAStr(#the carrier of a1,the charact of a1#) -> strict quasi_total;
end;

:: MSSUBLAT:funcreg 3
registration
  let a1 be partial UAStr;
  cluster UAStr(#the carrier of a1,the charact of a1#) -> strict partial;
end;

:: MSSUBLAT:funcreg 4
registration
  let a1 be non-empty UAStr;
  cluster UAStr(#the carrier of a1,the charact of a1#) -> strict non-empty;
end;

:: MSSUBLAT:funcreg 5
registration
  let a1 be non empty partial quasi_total non-empty with_const_op UAStr;
  cluster UAStr(#the carrier of a1,the charact of a1#) -> strict with_const_op;
end;

:: MSSUBLAT:th 32
theorem
for b1 being non empty partial quasi_total non-empty with_const_op UAStr holds
   UnSubAlLattice UAStr(#the carrier of b1,the charact of b1#),MSSubAlLattice MSAlg UAStr(#the carrier of b1,the charact of b1#) are_isomorphic;