Directly apply the substitutions to constraints
umazalakain opened this issue · comments
I wonder if we could also alternatively directly apply the required substitutions (na -> n
and nb -> n
) where necessary and only generate 1 constraint instead of 3 here. Something like:
val n = NatIdentifier(freshName("n"))
decomposed(Seq(TypeConstraint(
substitute.natsInType(ta, Map(na -> n)),
substitute.natsInType(tb, Map(nb -> n))
))), preserve + n)
Originally posted by @Bastacyclop in #174 (comment)