theorem Th36:
  F is_distributive_wrt G implies
    F[:](f,G.(d1,d2)) = G.:(F[:](f,d1),F[:] (f,d2))
proof
  assume
A1: F is_distributive_wrt G;
  now
    let c;
    thus (F[:](f,G.(d1,d2))).c = F.(f.c,G.(d1,d2)) by FUNCOP_1:48
      .= G.(F.(f.c,d1),F.(f.c,d2)) by A1,BINOP_1:11
      .= G.(F[:](f,d1).c,F.(f.c,d2)) by FUNCOP_1:48
      .= G.((F[:](f,d1)).c,(F[:](f,d2)).c) by FUNCOP_1:48
      .= (G.:(F[:](f,d1),F[:](f,d2))).c by FUNCOP_1:37;
  end;
  hence thesis by FUNCT_2:63;
end;
