reserve o,m for set;
reserve C for Cartesian_category;
reserve a,b,c,d,e,s for Object of C;

theorem Th36:
  Hom((a[x]b)[x]c,a[x](b[x]c)) <> {} & Hom(a[x](b[x]c),(a[x]b)[x]c ) <> {}
proof
A1: Hom((a[x]b)[x]c,a[x]b) <> {} by Th19;
  Hom(a[x]b,b) <> {} by Th19;
  then
A2: Hom((a[x]b)[x]c,b) <> {} by A1,CAT_1:24;
  Hom(a[x]b,a) <> {} by Th19;
  then
A3: Hom((a[x]b)[x]c,a) <> {} by A1,CAT_1:24;
  Hom((a[x]b)[x]c,c) <> {} by Th19;
  then Hom((a[x]b)[x]c,b[x]c) <> {} by A2,Th23;
  hence Hom((a[x]b)[x]c,a[x](b[x]c)) <> {} by A3,Th23;
A4: Hom(a[x](b[x]c),b[x]c) <> {} by Th19;
  Hom(b[x]c,c) <> {} by Th19;
  then
A5: Hom(a[x](b[x]c),c) <> {} by A4,CAT_1:24;
  Hom(b[x]c,b) <> {} by Th19;
  then
A6: Hom(a[x](b[x]c),b) <> {} by A4,CAT_1:24;
  Hom(a[x](b[x]c),a) <> {} by Th19;
  then Hom(a[x](b[x]c),a[x]b) <> {} by A6,Th23;
  hence thesis by A5,Th23;
end;
