private/infer.ss
(module infer mzscheme
  (require (all-except (lib "unit.ss") rename) "big-unit.ss" "signatures.ss")
  
  (provide-signature-elements infer^)
#| (require "types.ss")
(require "types-aux.ss")
  (define z (Un (-mu heap-node (-struct 'heap-node #f (list (-base 'comparator) N (-v a) (Un heap-node (-base 'heap-empty))) '())) 
                (-base 'heap-empty)))
(define y (Un (-mu heap-node (-struct 'heap-node #f (list (-base 'comparator) N (-pair N N) (Un heap-node (-base 'heap-empty))) '())) 
                (-base 'heap-empty))) 
(unify (list (list z y)))
|#
  )