diff --git a/test/legacy/main.js b/test/legacy/main.js
index <HASH>..<HASH> 100644
--- a/test/legacy/main.js
+++ b/test/legacy/main.js
@@ -86,3 +86,25 @@ testArbitrary(
     }

   )

 );

+testArbitrary(

+  fc.letrec(function(tie) {

+    return {

+      tree: fc.oneof(tie('node'), tie('leaf'), tie('leaf')),

+      node: fc.tuple(tie('tree'), tie('tree')),

+      leaf: fc.nat()

+    };

+  }).tree

+);

+testArbitrary(

+  (function() {

+    const tree = fc.memo(function(n) {

+      return fc.oneof(node(n), leaf(), leaf());

+    });

+    const node = fc.memo(function(n) {

+      if (n <= 1) return fc.record({ left: leaf(), right: leaf() });

+      return fc.record({ left: tree(), right: tree() });

+    });

+    const leaf = fc.nat;

+    return tree();

+  })()

+);
Check letrec/memo are compatible with node <I> (#<I>)