let tor t1 t2 =
  match t1,t2 with
      TTrue,_ | _,TTrue -> TTrue
    | TFalse,t | t,TFalse -> t
    | _,_ -> TOr(t1,t2)