Skip to content
  • Kim Nguyễn's avatar
    Fix the handling of recursive types in the Positive module: · ac1f6ab4
    Kim Nguyễn authored
     * make sure (decompose t) builds a cyclic 'v' object if t is a recursive type.
     * add a memoization environment to substitute_aux to detect and rebuild such cycles in the new 'v' object.
     * use solve everywhere to build a cycle type (this basically implements Courcelle's algorithm at the level of types.
    ac1f6ab4