File tree Expand file tree Collapse file tree 1 file changed +5
-5
lines changed
Expand file tree Collapse file tree 1 file changed +5
-5
lines changed Original file line number Diff line number Diff line change 6161(define-namespace-anchor tests)
6262(define ns (namespace-anchor->namespace tests))
6363
64- (define (verified-equal? impl spec)
64+ (define (verified-equal? vars impl spec)
6565 (or (equal? impl spec)
6666 (begin
6767 (match-define `(,_ ... (define ,impl-h ,_ ... )) impl)
6868 (match-define `(,_ ... (define ,spec-h ,_ ... )) spec)
69- (define consts (take '(x y) (sub1 (length impl-h)) ))
69+ (define consts (map term->datum vars ))
7070 (define body `(let ([impl (lambda ,(cdr impl-h) ,@impl ,impl-h)]
7171 [spec (lambda ,(cdr spec-h) ,@spec ,spec-h)])
7272 (unsat?
7676 (eval body ns))))
7777
7878(define-syntax-rule (check-synth vars expr expected)
79- (let* ([sol (synthesize #:forall vars #:guarantee (assert expr))])
79+ (let* ([vs (symbolics vars)]
80+ [sol (synthesize #:forall vs #:guarantee (assert expr))])
8081 (check-sat sol)
8182 (check-true
82- (verified-equal? (map syntax->datum (generate-forms sol))
83- expected))))
83+ (verified-equal? vs (map syntax->datum (generate-forms sol)) expected))))
8484
8585(define basic-tests
8686 (test-suite+ "Basic hole tests. "
You can’t perform that action at this time.
0 commit comments