let combine ma mb =
    let combine_m ma mb =
      let is_new, mr = Mark.combine ma mb in
      let m_to_prop = if is_new then mr else Mark.bottom in
        mr, m_to_prop
    in
    let new_m1, prop1 = combine_m ma.T.m1 mb.T.m1 in
    let new_m2, prop2 = combine_m ma.T.m2 mb.T.m2 in
      (mk_m new_m1 new_m2), (mk_m prop1  prop2)