Article OPOSET_1, MML version 4.99.1005

:: OPOSET_1:funcnot 1 => ZFMISC_1:func 2
notation
  let a1, a2 be set;
  synonym [#](a1,a2) for [:a1,a2:];
end;

:: OPOSET_1:funcnot 2 => OPOSET_1:func 1
definition
  let a1, a2 be set;
  func {}(A1,A2) -> Relation of a1,a2 equals
    {};
end;

:: OPOSET_1:def 1
theorem
for b1, b2 being set holds
{}(b1,b2) = {};

:: OPOSET_1:funcnot 3 => OPOSET_1:func 2
definition
  let a1, a2 be set;
  redefine func [#](a1,a2) -> Relation of a1,a2;
end;

:: OPOSET_1:th 1
theorem
for b1 being non empty set holds
   field id b1 = b1;

:: OPOSET_1:th 3
theorem
op1 = {[{},{}]};

:: OPOSET_1:th 4
theorem
for b1 being non empty reflexive antisymmetric RelStr
for b2, b3 being Element of the carrier of b1
      st b2 <= b3
   holds "\/"({b2,b3},b1) = b3 & "/\"({b2,b3},b1) = b2;

:: OPOSET_1:th 6
theorem
for b1, b2 being set holds
field {}(b1,b2) = {};

:: OPOSET_1:th 7
theorem
for b1 being non empty set
for b2 being Relation of b1,b1
      st b2 is_reflexive_in b1
   holds b2 is reflexive & field b2 = b1;

:: OPOSET_1:th 8
theorem
for b1 being non empty set
for b2 being Relation of b1,b1
      st b2 is_symmetric_in b1
   holds b2 is symmetric;

:: OPOSET_1:th 9
theorem
for b1, b2 being non empty set
for b3 being Relation of b1,b1
      st b3 is symmetric & field b3 c= b2
   holds b3 is_symmetric_in b2;

:: OPOSET_1:th 10
theorem
for b1, b2 being non empty set
for b3 being Relation of b1,b1
      st b3 is antisymmetric & field b3 c= b2
   holds b3 is_antisymmetric_in b2;

:: OPOSET_1:th 11
theorem
for b1 being non empty set
for b2 being Relation of b1,b1
      st b2 is_antisymmetric_in b1
   holds b2 is antisymmetric;

:: OPOSET_1:th 12
theorem
for b1, b2 being non empty set
for b3 being Relation of b1,b1
      st b3 is transitive & field b3 c= b2
   holds b3 is_transitive_in b2;

:: OPOSET_1:th 13
theorem
for b1 being non empty set
for b2 being Relation of b1,b1
      st b2 is_transitive_in b1
   holds b2 is transitive;

:: OPOSET_1:th 14
theorem
for b1, b2 being non empty set
for b3 being Relation of b1,b1
      st b3 is asymmetric & field b3 c= b2
   holds b3 is_asymmetric_in b2;

:: OPOSET_1:th 15
theorem
for b1 being non empty set
for b2 being Relation of b1,b1
      st b2 is_asymmetric_in b1
   holds b2 is asymmetric;

:: OPOSET_1:th 16
theorem
for b1, b2 being non empty set
for b3 being Relation of b1,b1
      st b3 is irreflexive & field b3 c= b2
   holds b3 is_irreflexive_in b2;

:: OPOSET_1:th 17
theorem
for b1 being non empty set
for b2 being Relation of b1,b1
      st b2 is_irreflexive_in b1
   holds b2 is irreflexive;

:: OPOSET_1:exreg 1
registration
  let a1 be set;
  cluster Relation-like irreflexive asymmetric transitive Relation of a1,a1;
end;

:: OPOSET_1:funcreg 1
registration
  let a1 be non empty set;
  let a2 be Relation of a1,a1;
  let a3 be Function-like quasi_total Relation of a1,a1;
  cluster OrthoRelStr(#a1,a2,a3#) -> non empty strict;
end;

:: OPOSET_1:exreg 2
registration
  cluster non empty strict OrthoRelStr;
end;

:: OPOSET_1:attrnot 1 => OPOSET_1:attr 1
definition
  let a1 be non empty set;
  let a2 be Function-like quasi_total Relation of a1,a1;
  attr a2 is dneg means
    for b1 being Element of a1 holds
       a2 . (a2 . b1) = b1;
end;

:: OPOSET_1:dfs 2
definiens
  let a1 be non empty set;
  let a2 be Function-like quasi_total Relation of a1,a1;
To prove
     a2 is dneg
it is sufficient to prove
  thus for b1 being Element of a1 holds
       a2 . (a2 . b1) = b1;

:: OPOSET_1:def 3
theorem
for b1 being non empty set
for b2 being Function-like quasi_total Relation of b1,b1 holds
      b2 is dneg(b1)
   iff
      for b3 being Element of b1 holds
         b2 . (b2 . b3) = b3;

:: OPOSET_1:attrnot 2 => OPOSET_1:attr 1
notation
  let a1 be non empty set;
  let a2 be Function-like quasi_total Relation of a1,a1;
  synonym involutive for dneg;
end;

:: OPOSET_1:th 19
theorem
op1 is dneg(1);

:: OPOSET_1:th 20
theorem
for b1 being non empty set holds
   id b1 is dneg(b1);

:: OPOSET_1:exreg 3
registration
  let a1 be non empty OrthoRelStr;
  cluster Relation-like Function-like non empty quasi_total total dneg Relation of the carrier of a1,the carrier of a1;
end;

:: OPOSET_1:funcnot 4 => OPOSET_1:func 3
definition
  func TrivOrthoRelStr -> strict OrthoRelStr equals
    OrthoRelStr(#1,id 1,op1#);
end;

:: OPOSET_1:def 4
theorem
TrivOrthoRelStr = OrthoRelStr(#1,id 1,op1#);

:: OPOSET_1:funcnot 5 => OPOSET_1:func 3
notation
  synonym TrivPoset for TrivOrthoRelStr;
end;

:: OPOSET_1:funcreg 2
registration
  cluster TrivOrthoRelStr -> non empty trivial strict;
end;

:: OPOSET_1:funcnot 6 => OPOSET_1:func 4
definition
  func TrivAsymOrthoRelStr -> strict OrthoRelStr equals
    OrthoRelStr(#1,{}(1,1),op1#);
end;

:: OPOSET_1:def 5
theorem
TrivAsymOrthoRelStr = OrthoRelStr(#1,{}(1,1),op1#);

:: OPOSET_1:funcreg 3
registration
  cluster TrivAsymOrthoRelStr -> non empty strict;
end;

:: OPOSET_1:attrnot 3 => OPOSET_1:attr 2
definition
  let a1 be non empty OrthoRelStr;
  attr a1 is Dneg means
    ex b1 being Function-like quasi_total Relation of the carrier of a1,the carrier of a1 st
       b1 = the Compl of a1 & b1 is dneg(the carrier of a1);
end;

:: OPOSET_1:dfs 5
definiens
  let a1 be non empty OrthoRelStr;
To prove
     a1 is Dneg
it is sufficient to prove
  thus ex b1 being Function-like quasi_total Relation of the carrier of a1,the carrier of a1 st
       b1 = the Compl of a1 & b1 is dneg(the carrier of a1);

:: OPOSET_1:def 6
theorem
for b1 being non empty OrthoRelStr holds
      b1 is Dneg
   iff
      ex b2 being Function-like quasi_total Relation of the carrier of b1,the carrier of b1 st
         b2 = the Compl of b1 & b2 is dneg(the carrier of b1);

:: OPOSET_1:th 21
theorem
TrivOrthoRelStr is Dneg;

:: OPOSET_1:funcreg 4
registration
  cluster TrivOrthoRelStr -> strict Dneg;
end;

:: OPOSET_1:exreg 4
registration
  cluster non empty Dneg OrthoRelStr;
end;

:: OPOSET_1:attrnot 4 => OPOSET_1:attr 3
definition
  let a1 be non empty RelStr;
  attr a1 is SubReFlexive means
    the InternalRel of a1 is reflexive;
end;

:: OPOSET_1:dfs 6
definiens
  let a1 be non empty RelStr;
To prove
     a1 is SubReFlexive
it is sufficient to prove
  thus the InternalRel of a1 is reflexive;

:: OPOSET_1:def 9
theorem
for b1 being non empty RelStr holds
      b1 is SubReFlexive
   iff
      the InternalRel of b1 is reflexive;

:: OPOSET_1:th 22
theorem
for b1 being non empty RelStr
      st b1 is reflexive
   holds b1 is SubReFlexive;

:: OPOSET_1:th 23
theorem
TrivOrthoRelStr is reflexive;

:: OPOSET_1:funcreg 5
registration
  cluster TrivOrthoRelStr -> reflexive strict;
end;

:: OPOSET_1:exreg 5
registration
  cluster non empty reflexive strict OrthoRelStr;
end;

:: OPOSET_1:attrnot 5 => OPOSET_1:attr 4
definition
  let a1 be non empty RelStr;
  attr a1 is SubIrreFlexive means
    the InternalRel of a1 is irreflexive;
end;

:: OPOSET_1:dfs 7
definiens
  let a1 be non empty RelStr;
To prove
     a1 is SubIrreFlexive
it is sufficient to prove
  thus the InternalRel of a1 is irreflexive;

:: OPOSET_1:def 11
theorem
for b1 being non empty RelStr holds
      b1 is SubIrreFlexive
   iff
      the InternalRel of b1 is irreflexive;

:: OPOSET_1:attrnot 6 => NECKLACE:attr 3
definition
  let a1 be RelStr;
  attr a1 is irreflexive means
    the InternalRel of a1 is_irreflexive_in the carrier of a1;
end;

:: OPOSET_1:dfs 8
definiens
  let a1 be non empty RelStr;
To prove
     a1 is irreflexive
it is sufficient to prove
  thus the InternalRel of a1 is_irreflexive_in the carrier of a1;

:: OPOSET_1:def 12
theorem
for b1 being non empty RelStr holds
      b1 is irreflexive
   iff
      the InternalRel of b1 is_irreflexive_in the carrier of b1;

:: OPOSET_1:th 24
theorem
for b1 being non empty RelStr
      st b1 is irreflexive
   holds b1 is SubIrreFlexive;

:: OPOSET_1:th 25
theorem
TrivAsymOrthoRelStr is irreflexive;

:: OPOSET_1:condreg 1
registration
  cluster non empty irreflexive -> SubIrreFlexive (OrthoRelStr);
end;

:: OPOSET_1:funcreg 6
registration
  cluster TrivAsymOrthoRelStr -> irreflexive strict;
end;

:: OPOSET_1:exreg 6
registration
  cluster non empty irreflexive strict OrthoRelStr;
end;

:: OPOSET_1:attrnot 7 => OPOSET_1:attr 5
definition
  let a1 be non empty RelStr;
  attr a1 is SubSymmetric means
    the InternalRel of a1 is symmetric Relation of the carrier of a1,the carrier of a1;
end;

:: OPOSET_1:dfs 9
definiens
  let a1 be non empty RelStr;
To prove
     a1 is SubSymmetric
it is sufficient to prove
  thus the InternalRel of a1 is symmetric Relation of the carrier of a1,the carrier of a1;

:: OPOSET_1:def 13
theorem
for b1 being non empty RelStr holds
      b1 is SubSymmetric
   iff
      the InternalRel of b1 is symmetric Relation of the carrier of b1,the carrier of b1;

:: OPOSET_1:th 26
theorem
for b1 being non empty RelStr
      st b1 is symmetric
   holds b1 is SubSymmetric;

:: OPOSET_1:th 27
theorem
TrivOrthoRelStr is symmetric;

:: OPOSET_1:condreg 2
registration
  cluster non empty symmetric -> SubSymmetric (OrthoRelStr);
end;

:: OPOSET_1:exreg 7
registration
  cluster non empty symmetric strict OrthoRelStr;
end;

:: OPOSET_1:attrnot 8 => OPOSET_1:attr 6
definition
  let a1 be non empty RelStr;
  attr a1 is SubAntisymmetric means
    the InternalRel of a1 is antisymmetric Relation of the carrier of a1,the carrier of a1;
end;

:: OPOSET_1:dfs 10
definiens
  let a1 be non empty RelStr;
To prove
     a1 is SubAntisymmetric
it is sufficient to prove
  thus the InternalRel of a1 is antisymmetric Relation of the carrier of a1,the carrier of a1;

:: OPOSET_1:def 15
theorem
for b1 being non empty RelStr holds
      b1 is SubAntisymmetric
   iff
      the InternalRel of b1 is antisymmetric Relation of the carrier of b1,the carrier of b1;

:: OPOSET_1:th 28
theorem
for b1 being non empty RelStr
      st b1 is antisymmetric
   holds b1 is SubAntisymmetric;

:: OPOSET_1:condreg 3
registration
  cluster non empty antisymmetric -> SubAntisymmetric (OrthoRelStr);
end;

:: OPOSET_1:funcreg 7
registration
  cluster TrivOrthoRelStr -> symmetric strict;
end;

:: OPOSET_1:exreg 8
registration
  cluster non empty antisymmetric symmetric strict OrthoRelStr;
end;

:: OPOSET_1:attrnot 9 => OPOSET_1:attr 7
definition
  let a1 be non empty RelStr;
  attr a1 is Asymmetric means
    the InternalRel of a1 is_asymmetric_in the carrier of a1;
end;

:: OPOSET_1:dfs 11
definiens
  let a1 be non empty RelStr;
To prove
     a1 is Asymmetric
it is sufficient to prove
  thus the InternalRel of a1 is_asymmetric_in the carrier of a1;

:: OPOSET_1:def 18
theorem
for b1 being non empty RelStr holds
      b1 is Asymmetric
   iff
      the InternalRel of b1 is_asymmetric_in the carrier of b1;

:: OPOSET_1:th 30
theorem
for b1 being non empty RelStr
      st b1 is Asymmetric
   holds b1 is asymmetric;

:: OPOSET_1:th 31
theorem
TrivAsymOrthoRelStr is Asymmetric;

:: OPOSET_1:condreg 4
registration
  cluster non empty Asymmetric -> asymmetric (OrthoRelStr);
end;

:: OPOSET_1:funcreg 8
registration
  cluster TrivAsymOrthoRelStr -> strict Asymmetric;
end;

:: OPOSET_1:exreg 9
registration
  cluster non empty strict Asymmetric OrthoRelStr;
end;

:: OPOSET_1:attrnot 10 => OPOSET_1:attr 8
definition
  let a1 be non empty RelStr;
  attr a1 is SubTransitive means
    the InternalRel of a1 is transitive Relation of the carrier of a1,the carrier of a1;
end;

:: OPOSET_1:dfs 12
definiens
  let a1 be non empty RelStr;
To prove
     a1 is SubTransitive
it is sufficient to prove
  thus the InternalRel of a1 is transitive Relation of the carrier of a1,the carrier of a1;

:: OPOSET_1:def 19
theorem
for b1 being non empty RelStr holds
      b1 is SubTransitive
   iff
      the InternalRel of b1 is transitive Relation of the carrier of b1,the carrier of b1;

:: OPOSET_1:th 32
theorem
for b1 being non empty RelStr
      st b1 is transitive
   holds b1 is SubTransitive;

:: OPOSET_1:condreg 5
registration
  cluster non empty transitive -> SubTransitive (OrthoRelStr);
end;

:: OPOSET_1:exreg 10
registration
  cluster non empty reflexive transitive antisymmetric symmetric strict OrthoRelStr;
end;

:: OPOSET_1:th 34
theorem
TrivAsymOrthoRelStr is transitive;

:: OPOSET_1:funcreg 9
registration
  cluster TrivAsymOrthoRelStr -> transitive irreflexive strict Asymmetric;
end;

:: OPOSET_1:exreg 11
registration
  cluster non empty transitive irreflexive strict Asymmetric OrthoRelStr;
end;

:: OPOSET_1:th 35
theorem
for b1 being non empty RelStr
      st b1 is SubSymmetric & b1 is SubTransitive
   holds b1 is SubReFlexive;

:: OPOSET_1:th 36
theorem
for b1 being non empty RelStr
      st b1 is SubIrreFlexive & b1 is SubTransitive
   holds b1 is asymmetric;

:: OPOSET_1:th 37
theorem
for b1 being non empty RelStr
      st b1 is asymmetric
   holds b1 is SubIrreFlexive;

:: OPOSET_1:th 38
theorem
for b1 being non empty RelStr
      st b1 is reflexive & b1 is SubSymmetric
   holds b1 is symmetric;

:: OPOSET_1:condreg 6
registration
  cluster non empty reflexive SubSymmetric -> symmetric (OrthoRelStr);
end;

:: OPOSET_1:th 39
theorem
for b1 being non empty RelStr
      st b1 is reflexive & b1 is SubAntisymmetric
   holds b1 is antisymmetric;

:: OPOSET_1:condreg 7
registration
  cluster non empty reflexive SubAntisymmetric -> antisymmetric (OrthoRelStr);
end;

:: OPOSET_1:th 40
theorem
for b1 being non empty RelStr
      st b1 is reflexive & b1 is SubTransitive
   holds b1 is transitive;

:: OPOSET_1:condreg 8
registration
  cluster non empty reflexive SubTransitive -> transitive (OrthoRelStr);
end;

:: OPOSET_1:th 41
theorem
for b1 being non empty RelStr
      st b1 is irreflexive & b1 is SubTransitive
   holds b1 is transitive;

:: OPOSET_1:condreg 9
registration
  cluster non empty irreflexive SubTransitive -> transitive (OrthoRelStr);
end;

:: OPOSET_1:th 42
theorem
for b1 being non empty RelStr
      st b1 is irreflexive & b1 is asymmetric
   holds b1 is Asymmetric;

:: OPOSET_1:condreg 10
registration
  cluster non empty asymmetric irreflexive -> Asymmetric (OrthoRelStr);
end;

:: OPOSET_1:attrnot 11 => OPOSET_1:attr 9
definition
  let a1 be non empty RelStr;
  attr a1 is SubQuasiOrdered means
    a1 is SubReFlexive & a1 is SubTransitive;
end;

:: OPOSET_1:dfs 13
definiens
  let a1 be non empty RelStr;
To prove
     a1 is SubQuasiOrdered
it is sufficient to prove
  thus a1 is SubReFlexive & a1 is SubTransitive;

:: OPOSET_1:def 21
theorem
for b1 being non empty RelStr holds
      b1 is SubQuasiOrdered
   iff
      b1 is SubReFlexive & b1 is SubTransitive;

:: OPOSET_1:attrnot 12 => OPOSET_1:attr 9
notation
  let a1 be non empty RelStr;
  synonym SubPreOrdered for SubQuasiOrdered;
end;

:: OPOSET_1:attrnot 13 => OPOSET_1:attr 10
definition
  let a1 be non empty RelStr;
  attr a1 is QuasiOrdered means
    a1 is reflexive & a1 is transitive;
end;

:: OPOSET_1:dfs 14
definiens
  let a1 be non empty RelStr;
To prove
     a1 is QuasiOrdered
it is sufficient to prove
  thus a1 is reflexive & a1 is transitive;

:: OPOSET_1:def 22
theorem
for b1 being non empty RelStr holds
      b1 is QuasiOrdered
   iff
      b1 is reflexive & b1 is transitive;

:: OPOSET_1:attrnot 14 => OPOSET_1:attr 10
notation
  let a1 be non empty RelStr;
  synonym PreOrdered for QuasiOrdered;
end;

:: OPOSET_1:th 43
theorem
for b1 being non empty RelStr
      st b1 is QuasiOrdered
   holds b1 is SubQuasiOrdered;

:: OPOSET_1:condreg 11
registration
  cluster non empty QuasiOrdered -> SubQuasiOrdered (OrthoRelStr);
end;

:: OPOSET_1:funcreg 10
registration
  cluster TrivOrthoRelStr -> strict QuasiOrdered;
end;

:: OPOSET_1:attrnot 15 => OPOSET_1:attr 11
definition
  let a1 be non empty OrthoRelStr;
  attr a1 is QuasiPure means
    a1 is Dneg & a1 is QuasiOrdered;
end;

:: OPOSET_1:dfs 15
definiens
  let a1 be non empty OrthoRelStr;
To prove
     a1 is QuasiPure
it is sufficient to prove
  thus a1 is Dneg & a1 is QuasiOrdered;

:: OPOSET_1:def 23
theorem
for b1 being non empty OrthoRelStr holds
      b1 is QuasiPure
   iff
      b1 is Dneg & b1 is QuasiOrdered;

:: OPOSET_1:exreg 12
registration
  cluster non empty strict Dneg QuasiOrdered QuasiPure OrthoRelStr;
end;

:: OPOSET_1:funcreg 11
registration
  cluster TrivOrthoRelStr -> strict QuasiPure;
end;

:: OPOSET_1:modenot 1
definition
  mode QuasiPureOrthoRelStr is non empty QuasiPure OrthoRelStr;
end;

:: OPOSET_1:attrnot 16 => OPOSET_1:attr 12
definition
  let a1 be non empty OrthoRelStr;
  attr a1 is SubPartialOrdered means
    a1 is reflexive & a1 is SubAntisymmetric & a1 is SubTransitive;
end;

:: OPOSET_1:dfs 16
definiens
  let a1 be non empty OrthoRelStr;
To prove
     a1 is SubPartialOrdered
it is sufficient to prove
  thus a1 is reflexive & a1 is SubAntisymmetric & a1 is SubTransitive;

:: OPOSET_1:def 24
theorem
for b1 being non empty OrthoRelStr holds
      b1 is SubPartialOrdered
   iff
      b1 is reflexive & b1 is SubAntisymmetric & b1 is SubTransitive;

:: OPOSET_1:attrnot 17 => OPOSET_1:attr 13
definition
  let a1 be non empty OrthoRelStr;
  attr a1 is PartialOrdered means
    a1 is reflexive & a1 is antisymmetric & a1 is transitive;
end;

:: OPOSET_1:dfs 17
definiens
  let a1 be non empty OrthoRelStr;
To prove
     a1 is PartialOrdered
it is sufficient to prove
  thus a1 is reflexive & a1 is antisymmetric & a1 is transitive;

:: OPOSET_1:def 25
theorem
for b1 being non empty OrthoRelStr holds
      b1 is PartialOrdered
   iff
      b1 is reflexive & b1 is antisymmetric & b1 is transitive;

:: OPOSET_1:th 44
theorem
for b1 being non empty OrthoRelStr holds
      b1 is SubPartialOrdered
   iff
      b1 is PartialOrdered;

:: OPOSET_1:condreg 12
registration
  cluster non empty SubPartialOrdered -> PartialOrdered (OrthoRelStr);
end;

:: OPOSET_1:condreg 13
registration
  cluster non empty PartialOrdered -> SubPartialOrdered (OrthoRelStr);
end;

:: OPOSET_1:condreg 14
registration
  cluster non empty PartialOrdered -> reflexive transitive antisymmetric (OrthoRelStr);
end;

:: OPOSET_1:condreg 15
registration
  cluster non empty reflexive transitive antisymmetric -> PartialOrdered (OrthoRelStr);
end;

:: OPOSET_1:attrnot 18 => OPOSET_1:attr 14
definition
  let a1 be non empty OrthoRelStr;
  attr a1 is Pure means
    a1 is Dneg & a1 is PartialOrdered;
end;

:: OPOSET_1:dfs 18
definiens
  let a1 be non empty OrthoRelStr;
To prove
     a1 is Pure
it is sufficient to prove
  thus a1 is Dneg & a1 is PartialOrdered;

:: OPOSET_1:def 26
theorem
for b1 being non empty OrthoRelStr holds
      b1 is Pure
   iff
      b1 is Dneg & b1 is PartialOrdered;

:: OPOSET_1:exreg 13
registration
  cluster non empty strict Dneg PartialOrdered Pure OrthoRelStr;
end;

:: OPOSET_1:funcreg 12
registration
  cluster TrivOrthoRelStr -> strict Pure;
end;

:: OPOSET_1:modenot 2
definition
  mode PureOrthoRelStr is non empty Pure OrthoRelStr;
end;

:: OPOSET_1:attrnot 19 => OPOSET_1:attr 15
definition
  let a1 be non empty OrthoRelStr;
  attr a1 is SubStrictPartialOrdered means
    a1 is asymmetric & a1 is SubTransitive;
end;

:: OPOSET_1:dfs 19
definiens
  let a1 be non empty OrthoRelStr;
To prove
     a1 is SubStrictPartialOrdered
it is sufficient to prove
  thus a1 is asymmetric & a1 is SubTransitive;

:: OPOSET_1:def 27
theorem
for b1 being non empty OrthoRelStr holds
      b1 is SubStrictPartialOrdered
   iff
      b1 is asymmetric & b1 is SubTransitive;

:: OPOSET_1:attrnot 20 => OPOSET_1:attr 16
definition
  let a1 be non empty OrthoRelStr;
  attr a1 is StrictPartialOrdered means
    a1 is Asymmetric & a1 is transitive;
end;

:: OPOSET_1:dfs 20
definiens
  let a1 be non empty OrthoRelStr;
To prove
     a1 is StrictPartialOrdered
it is sufficient to prove
  thus a1 is Asymmetric & a1 is transitive;

:: OPOSET_1:def 28
theorem
for b1 being non empty OrthoRelStr holds
      b1 is StrictPartialOrdered
   iff
      b1 is Asymmetric & b1 is transitive;

:: OPOSET_1:attrnot 21 => OPOSET_1:attr 16
notation
  let a1 be non empty OrthoRelStr;
  synonym StrictOrdered for StrictPartialOrdered;
end;

:: OPOSET_1:th 45
theorem
for b1 being non empty OrthoRelStr
      st b1 is StrictPartialOrdered
   holds b1 is SubStrictPartialOrdered;

:: OPOSET_1:condreg 16
registration
  cluster non empty StrictPartialOrdered -> SubStrictPartialOrdered (OrthoRelStr);
end;

:: OPOSET_1:th 46
theorem
for b1 being non empty OrthoRelStr
      st b1 is SubStrictPartialOrdered
   holds b1 is SubIrreFlexive;

:: OPOSET_1:condreg 17
registration
  cluster non empty SubStrictPartialOrdered -> SubIrreFlexive (OrthoRelStr);
end;

:: OPOSET_1:th 47
theorem
for b1 being non empty OrthoRelStr
      st b1 is irreflexive & b1 is SubStrictPartialOrdered
   holds b1 is StrictPartialOrdered;

:: OPOSET_1:condreg 18
registration
  cluster non empty irreflexive SubStrictPartialOrdered -> StrictPartialOrdered (OrthoRelStr);
end;

:: OPOSET_1:th 48
theorem
for b1 being non empty OrthoRelStr
      st b1 is StrictPartialOrdered
   holds b1 is irreflexive;

:: OPOSET_1:condreg 19
registration
  cluster non empty StrictPartialOrdered -> irreflexive (OrthoRelStr);
end;

:: OPOSET_1:funcreg 13
registration
  cluster TrivAsymOrthoRelStr -> irreflexive strict StrictPartialOrdered;
end;

:: OPOSET_1:exreg 14
registration
  cluster non empty irreflexive strict StrictPartialOrdered OrthoRelStr;
end;

:: OPOSET_1:th 49
theorem
for b1 being non empty QuasiOrdered OrthoRelStr
      st b1 is SubAntisymmetric
   holds b1 is PartialOrdered;

:: OPOSET_1:condreg 20
registration
  cluster non empty PartialOrdered -> reflexive transitive antisymmetric (OrthoRelStr);
end;

:: OPOSET_1:attrnot 22 => OPOSET_1:attr 17
definition
  let a1 be non empty RelStr;
  let a2 be Function-like quasi_total Relation of the carrier of a1,the carrier of a1;
  attr a2 is Orderinvolutive means
    ex b1 being Function-like quasi_total Relation of the carrier of a1,the carrier of a1 st
       b1 = a2 & b1 is dneg(the carrier of a1) & b1 is antitone(a1, a1);
end;

:: OPOSET_1:dfs 21
definiens
  let a1 be non empty RelStr;
  let a2 be Function-like quasi_total Relation of the carrier of a1,the carrier of a1;
To prove
     a2 is Orderinvolutive
it is sufficient to prove
  thus ex b1 being Function-like quasi_total Relation of the carrier of a1,the carrier of a1 st
       b1 = a2 & b1 is dneg(the carrier of a1) & b1 is antitone(a1, a1);

:: OPOSET_1:def 32
theorem
for b1 being non empty RelStr
for b2 being Function-like quasi_total Relation of the carrier of b1,the carrier of b1 holds
      b2 is Orderinvolutive(b1)
   iff
      ex b3 being Function-like quasi_total Relation of the carrier of b1,the carrier of b1 st
         b3 = b2 & b3 is dneg(the carrier of b1) & b3 is antitone(b1, b1);

:: OPOSET_1:attrnot 23 => OPOSET_1:attr 18
definition
  let a1 be non empty OrthoRelStr;
  attr a1 is OrderInvolutive means
    ex b1 being Function-like quasi_total Relation of the carrier of a1,the carrier of a1 st
       b1 = the Compl of a1 & b1 is Orderinvolutive(a1);
end;

:: OPOSET_1:dfs 22
definiens
  let a1 be non empty OrthoRelStr;
To prove
     a1 is OrderInvolutive
it is sufficient to prove
  thus ex b1 being Function-like quasi_total Relation of the carrier of a1,the carrier of a1 st
       b1 = the Compl of a1 & b1 is Orderinvolutive(a1);

:: OPOSET_1:def 33
theorem
for b1 being non empty OrthoRelStr holds
      b1 is OrderInvolutive
   iff
      ex b2 being Function-like quasi_total Relation of the carrier of b1,the carrier of b1 st
         b2 = the Compl of b1 & b2 is Orderinvolutive(b1);

:: OPOSET_1:th 51
theorem
the Compl of TrivOrthoRelStr is Orderinvolutive(TrivOrthoRelStr);

:: OPOSET_1:funcreg 14
registration
  cluster TrivOrthoRelStr -> strict OrderInvolutive;
end;

:: OPOSET_1:exreg 15
registration
  cluster non empty PartialOrdered Pure OrderInvolutive OrthoRelStr;
end;

:: OPOSET_1:modenot 3
definition
  mode PreOrthoPoset is non empty PartialOrdered Pure OrderInvolutive OrthoRelStr;
end;

:: OPOSET_1:prednot 1 => OPOSET_1:pred 1
definition
  let a1 be non empty RelStr;
  let a2 be Function-like quasi_total Relation of the carrier of a1,the carrier of a1;
  pred A2 QuasiOrthoComplement_on A1 means
    a2 is Orderinvolutive(a1) &
     (for b1 being Element of the carrier of a1 holds
        ex_sup_of {b1,a2 . b1},a1 & ex_inf_of {b1,a2 . b1},a1);
end;

:: OPOSET_1:dfs 23
definiens
  let a1 be non empty RelStr;
  let a2 be Function-like quasi_total Relation of the carrier of a1,the carrier of a1;
To prove
     a2 QuasiOrthoComplement_on a1
it is sufficient to prove
  thus a2 is Orderinvolutive(a1) &
     (for b1 being Element of the carrier of a1 holds
        ex_sup_of {b1,a2 . b1},a1 & ex_inf_of {b1,a2 . b1},a1);

:: OPOSET_1:def 34
theorem
for b1 being non empty RelStr
for b2 being Function-like quasi_total Relation of the carrier of b1,the carrier of b1 holds
      b2 QuasiOrthoComplement_on b1
   iff
      b2 is Orderinvolutive(b1) &
       (for b3 being Element of the carrier of b1 holds
          ex_sup_of {b3,b2 . b3},b1 & ex_inf_of {b3,b2 . b3},b1);

:: OPOSET_1:attrnot 24 => OPOSET_1:attr 19
definition
  let a1 be non empty OrthoRelStr;
  attr a1 is QuasiOrthocomplemented means
    ex b1 being Function-like quasi_total Relation of the carrier of a1,the carrier of a1 st
       b1 = the Compl of a1 & b1 QuasiOrthoComplement_on a1;
end;

:: OPOSET_1:dfs 24
definiens
  let a1 be non empty OrthoRelStr;
To prove
     a1 is QuasiOrthocomplemented
it is sufficient to prove
  thus ex b1 being Function-like quasi_total Relation of the carrier of a1,the carrier of a1 st
       b1 = the Compl of a1 & b1 QuasiOrthoComplement_on a1;

:: OPOSET_1:def 35
theorem
for b1 being non empty OrthoRelStr holds
      b1 is QuasiOrthocomplemented
   iff
      ex b2 being Function-like quasi_total Relation of the carrier of b1,the carrier of b1 st
         b2 = the Compl of b1 & b2 QuasiOrthoComplement_on b1;

:: OPOSET_1:th 52
theorem
TrivOrthoRelStr is QuasiOrthocomplemented;

:: OPOSET_1:prednot 2 => OPOSET_1:pred 2
definition
  let a1 be non empty RelStr;
  let a2 be Function-like quasi_total Relation of the carrier of a1,the carrier of a1;
  pred A2 OrthoComplement_on A1 means
    a2 is Orderinvolutive(a1) &
     (for b1 being Element of the carrier of a1 holds
        ex_sup_of {b1,a2 . b1},a1 &
         ex_inf_of {b1,a2 . b1},a1 &
         "\/"({b1,a2 . b1},a1) is_maximum_of the carrier of a1 &
         "/\"({b1,a2 . b1},a1) is_minimum_of the carrier of a1);
end;

:: OPOSET_1:dfs 25
definiens
  let a1 be non empty RelStr;
  let a2 be Function-like quasi_total Relation of the carrier of a1,the carrier of a1;
To prove
     a2 OrthoComplement_on a1
it is sufficient to prove
  thus a2 is Orderinvolutive(a1) &
     (for b1 being Element of the carrier of a1 holds
        ex_sup_of {b1,a2 . b1},a1 &
         ex_inf_of {b1,a2 . b1},a1 &
         "\/"({b1,a2 . b1},a1) is_maximum_of the carrier of a1 &
         "/\"({b1,a2 . b1},a1) is_minimum_of the carrier of a1);

:: OPOSET_1:def 36
theorem
for b1 being non empty RelStr
for b2 being Function-like quasi_total Relation of the carrier of b1,the carrier of b1 holds
      b2 OrthoComplement_on b1
   iff
      b2 is Orderinvolutive(b1) &
       (for b3 being Element of the carrier of b1 holds
          ex_sup_of {b3,b2 . b3},b1 &
           ex_inf_of {b3,b2 . b3},b1 &
           "\/"({b3,b2 . b3},b1) is_maximum_of the carrier of b1 &
           "/\"({b3,b2 . b3},b1) is_minimum_of the carrier of b1);

:: OPOSET_1:attrnot 25 => OPOSET_1:attr 20
definition
  let a1 be non empty OrthoRelStr;
  attr a1 is Orthocomplemented means
    ex b1 being Function-like quasi_total Relation of the carrier of a1,the carrier of a1 st
       b1 = the Compl of a1 & b1 OrthoComplement_on a1;
end;

:: OPOSET_1:dfs 26
definiens
  let a1 be non empty OrthoRelStr;
To prove
     a1 is Orthocomplemented
it is sufficient to prove
  thus ex b1 being Function-like quasi_total Relation of the carrier of a1,the carrier of a1 st
       b1 = the Compl of a1 & b1 OrthoComplement_on a1;

:: OPOSET_1:def 37
theorem
for b1 being non empty OrthoRelStr holds
      b1 is Orthocomplemented
   iff
      ex b2 being Function-like quasi_total Relation of the carrier of b1,the carrier of b1 st
         b2 = the Compl of b1 & b2 OrthoComplement_on b1;

:: OPOSET_1:th 53
theorem
for b1 being non empty OrthoRelStr
for b2 being Function-like quasi_total Relation of the carrier of b1,the carrier of b1
      st b2 OrthoComplement_on b1
   holds b2 QuasiOrthoComplement_on b1;

:: OPOSET_1:th 54
theorem
TrivOrthoRelStr is Orthocomplemented;

:: OPOSET_1:funcreg 15
registration
  cluster TrivOrthoRelStr -> strict QuasiOrthocomplemented Orthocomplemented;
end;

:: OPOSET_1:exreg 16
registration
  cluster non empty PartialOrdered QuasiOrthocomplemented Orthocomplemented OrthoRelStr;
end;

:: OPOSET_1:modenot 4
definition
  mode QuasiOrthoPoset is non empty PartialOrdered QuasiOrthocomplemented OrthoRelStr;
end;

:: OPOSET_1:modenot 5
definition
  mode OrthoPoset is non empty PartialOrdered Orthocomplemented OrthoRelStr;
end;