fact: Fixpoint merge (Gamma1 Gamma2 : list ty) := match Gamma1 with | nil => Gamma2 | (s1, phi1) :: Gamma1 => match Gamma2 with | nil => (s1, phi1) :: Gamma1 | (s2, phi2) :: Gamma2 => (s1, phi1 ++ (s2 :: phi2)) :: merge Gamma1 Gamma2 end end.
imports: Undecidability.IntersectionTypes.CD Undecidability.IntersectionTypes.Util.CD_facts Undecidability.LambdaCalculus.Util.term_facts PeanoNat Relations List Lia ssreflect