reserve L for Ortholattice,
  a, b, c for Element of L;

theorem Th3:
  for L being non empty OrthoLattStr holds L is Ortholattice iff (
for a, b, c being Element of L holds (a "\/" b) "\/" c = (c` "/\" b`)` "\/" a)
  & (for a, b being Element of L holds a = a "/\" (a "\/" b)) & for a, b being
  Element of L holds a = a "\/" (b "/\" b`)
proof
  let L be non empty OrthoLattStr;
  thus L is Ortholattice implies (for a, b, c being Element of L holds (a "\/"
  b) "\/" c = (c` "/\" b`)` "\/" a) & (for a, b being Element of L holds a = a
  "/\" (a "\/" b)) & for a, b being Element of L holds a = a "\/" (b "/\" b`)
  proof
    assume
A1: L is Ortholattice;
    thus for a, b, c being Element of L holds (a "\/" b) "\/" c = (c` "/\" b`)
    ` "\/" a
    proof
      let a,b,c be Element of L;
      (c` "/\" b`)` "\/" a=((c`` "\/" b``)`)` "\/" a by A1,ROBBINS1:def 23;
      then (c` "/\" b`)` "\/" a=((c "\/" b``)`)` "\/" a by A1,ROBBINS3:def 6;
      then (c` "/\" b`)` "\/" a=(c "\/" b)`` "\/" a by A1,ROBBINS3:def 6;
      then (c` "/\" b`)` "\/" a=(c "\/" b) "\/" a by A1,ROBBINS3:def 6;
      then (c` "/\" b`)` "\/" a=a "\/" (c "\/" b) by A1,LATTICES:def 4;
      then (c` "/\" b`)` "\/" a=c "\/" (a "\/" b) by A1,ROBBINS3:def 1;
      hence thesis by A1,LATTICES:def 4;
    end;
    thus for a, b being Element of L holds a = a "/\" (a "\/" b) by A1,
LATTICES:def 9;
    let a,b be Element of L;
    thus a "\/" (b "/\" b`) = a "\/" (b` "\/" b``)` by A1,ROBBINS1:def 23
      .= a "\/" (b` "\/" b)` by A1,ROBBINS3:def 6
      .= a "\/" (b "\/" b`)` by A1,LATTICES:def 4
      .= a "\/" (a "\/" a`)` by A1,ROBBINS3:def 7
      .= a "\/" (a`` "\/" a`)` by A1,ROBBINS3:def 6
      .= a "\/" (a` "/\" a) by A1,ROBBINS1:def 23
      .= (a` "/\" a)"\/"a by A1,LATTICES:def 4
      .= a by A1,LATTICES:def 8;
  end;
  assume
A2: for a, b, c being Element of L holds (a "\/" b) "\/" c = (c` "/\" b`
  )` "\/" a;
  assume
A3: for a, b being Element of L holds a = a "/\" (a "\/" b);
  assume
A4: for a, b being Element of L holds a = a "\/" (b "/\" b`);
A5: for a being Element of L holds a "/\" a = a
  proof
    let a be Element of L;
    thus a "/\" a = a "/\" (a "\/" (a "/\" a`)) by A4
      .= a by A3;
  end;
A6: for a,b being Element of L holds a = (b "/\" b`)`` "\/" a
  proof
    let a,b be Element of L;
    set x = b "/\" b`;
    (a "\/" x) "\/" x = (x` "/\" x`)` "\/" a by A2;
    then (a "\/" x) "\/" x = x`` "\/" a by A5;
    then a "\/" x = x`` "\/" a by A4;
    hence thesis by A4;
  end;
A7: for a being Element of L holds a "/\" a` = (a "/\" a`)``
  proof
    let a be Element of L;
    set x = a "/\" a`;
    thus x = x`` "\/" x by A6
      .= x`` by A4;
  end;
A8: for a,b being Element of L holds a = (b "/\" b`) "\/" a
  proof
    let a,b be Element of L;
    a = (b "/\" b`)`` "\/" a by A6;
    hence thesis by A7;
  end;
A9: for a,b being Element of L holds a "\/" b = (b` "/\" a`)`
  proof
    let a,b be Element of L;
    set x = a "/\" a`;
    (x "\/" a) "\/" b = (b` "/\" a`)` "\/" x by A2;
    hence a "\/" b = (b` "/\" a`)` "\/" x by A8
      .= (b` "/\" a`)` by A4;
  end;
A10: L is involutive
  proof
    let a be Element of L;
    a` = a` "/\" (a` "\/" a) & a` "\/" a = (a` "/\" a``)` by A3,A9;
    hence a`` = (a` "/\" a``) "\/" a by A9
      .= a by A8;
  end;
A11: L is join-commutative
  proof
    let a,b be Element of L;
    set x = a "/\" a`;
    x "\/" b = (b` "/\" x`)` by A9;
    hence b "\/" a = (b` "/\" x`)` "\/" a by A8
      .= (a "\/" x) "\/" b by A2
      .= a "\/" b by A4;
  end;
A12: L is de_Morgan
  proof
    let a,b be Element of L;
    thus (a` "\/" b`)` = (b` "\/" a`)` by A11
      .= (a`` "/\" b``)`` by A9
      .= a`` "/\" b`` by A10
      .= a`` "/\" b by A10
      .= a "/\" b by A10;
  end;
A13: L is meet-absorbing
  proof
    let a,b be Element of L;
    thus (a "/\" b) "\/" b = (b` "/\" (a "/\" b)`)` by A9
      .= (b` "/\" (a` "\/" b`)``)` by A12
      .= (b` "/\" (a` "\/" b`))` by A10
      .= (b` "/\" (b` "\/" a`))` by A11
      .= b`` by A3
      .= b by A10;
  end;
A14: L is join-associative
  proof
    let a,b,c be Element of L;
    thus (a "\/" b) "\/" c = (c` "/\" b`)` "\/" a by A2
      .= (b "\/" c) "\/" a by A9
      .= a "\/" (b "\/" c) by A11;
  end;
A15: L is meet-associative
  proof
    let a,b,c be Element of L;
    thus a "/\" (b "/\" c) = (a` "\/" (b "/\" c)`)` by A12
      .= (a` "\/" (b` "\/" c`)``)` by A12
      .= (a` "\/" (b` "\/" c`))` by A10
      .= ((a` "\/" b`) "\/" c`)` by A14
      .= ((a` "\/" b`)`` "\/" c`)` by A10
      .= ((a "/\" b)` "\/" c`)` by A12
      .= (a "/\" b) "/\" c by A12;
  end;
A16: for a,b being Element of L holds a "/\" a` = b "/\" b`
  proof
    let a,b be Element of L;
    a "/\" a` = (a "/\" a`) "\/" (b "/\" b`) by A4;
    hence thesis by A8;
  end;
A17: L is with_Top
  proof
    let a,b be Element of L;
    (a` "/\" a``)` = (b` "/\" b``)` by A16;
    then (a` "/\" a``)` = b` "\/" b by A9;
    then a` "\/" a = b` "\/" b by A9;
    then a` "\/" a = b "\/" b` by A11;
    hence thesis by A11;
  end;
  L is join-absorbing by A3;
  hence thesis by A11,A14,A10,A12,A17,A15,A13;
end;
