reserve x,y,z for set;
reserve Q for left-distributive right-distributive complete Lattice-like non
  empty QuantaleStr,
  a, b, c, d for Element of Q;
reserve Q for Quantale,
  a,a9,b,b9,c,d,d1,d2,D for Element of Q;

theorem Th19:
  D is dualizing implies Q is unital & the_unity_wrt the multF of
  Q = D -r> D & the_unity_wrt the multF of Q = D -l> D
proof
  set I = D-l>D, J = D-r>D;
  assume
A1: (a-r>D)-l>D = a & (a-l>D)-r>D = a;
A2: now
    deffunc F(set) = $1;
    let a;
    defpred P1[Element of Q] means $1 [*] (a [*] I) [= D;
    defpred P2[Element of Q] means $1 [*] a [= D;
    defpred P3[Element of Q] means J [*] a [*] $1 [= D;
    defpred P4[Element of Q] means a [*] $1 [= D;
A3: P1[b] iff P2[b]
    proof
      b [*] (a [*] I) = b [*] a [*] I & I-r>D=D by A1,GROUP_1:def 3;
      hence thesis by Th12;
    end;
A4: {F(b): P1[b]} = {F(c): P2[c]} from FRAENKEL:sch 3(A3);
    thus a [*] I = ((a [*] I)-r>D)-l>D by A1
      .= (a-r>D)-l>D by A4
      .= a by A1;
A5: P3[b] iff P4[b]
    proof
      J [*] (a [*] b) = J [*] a [*] b & J-l>D=D by A1,GROUP_1:def 3;
      hence thesis by Th11;
    end;
A6: {F(b): P3[b]} = {F(c): P4[c]} from FRAENKEL:sch 3(A5);
    thus J [*] a = ((J [*] a)-l>D)-r>D by A1
      .= (a-l>D)-r>D by A6
      .= a by A1;
  end;
A7: I is_a_right_unity_wrt times(Q)
  proof
    let a;
    thus times(Q).(a,I) = a [*] I .= a by A2;
  end;
A8: I = J [*] I by A2;
  I is_a_left_unity_wrt times(Q)
  proof
    let a;
    thus times(Q).(I,a) = J [*] a by A2,A8
      .= a by A2;
  end;
  then
A9: I is_a_unity_wrt times(Q) by A7;
  hence times(Q) is having_a_unity;
  J = J [*] I by A2;
  hence thesis by A8,A9,BINOP_1:def 8;
end;
