From b9a646128d21d00df29a713a20c8015696234ad7 Mon Sep 17 00:00:00 2001 From: Claude Date: Tue, 28 Apr 2026 03:32:32 +0000 Subject: [PATCH 1/6] ffi: marshal Posit8/16/32/64, Int, and List across the Racket FFI The marshalling layer in foreign.rkt previously only handled atomic primitives (Nat, Bool, Unit, Char, String) plus pre-existing Int/Rat support. This commit extends it to: - Posit8/16/32/64: marshal as exact rational (semantic value), encoded via posit*-encode / posit*-to-rational. NaR contamination raises an error since rationals cannot represent NaR. - List : marshal as a recursive cons/nil chain. Recognizes both the bare ((cons head) tail) form produced by foreign.rkt's own builder and the typed (((cons A) head) tail) form produced after elaboration of user code, plus namespace-qualified ::cons / ::nil names. base-type-name now returns either an atomic symbol or a list (List ) for the polymorphic List type. The marshal dispatch uses cond + case so it cleanly handles both shapes. Tests: tests/test-foreign-marshal-ext.rkt (49 unit tests) covers roundtripping for each new type, NaR rejection, nested List (List Int), make-marshaller-pair end-to-end behaviour, and parse-foreign-type recognition of the new types in arrow positions. --- racket/prologos/foreign.rkt | 244 ++++++++++--- .../tests/test-foreign-marshal-ext.rkt | 345 ++++++++++++++++++ 2 files changed, 544 insertions(+), 45 deletions(-) create mode 100644 racket/prologos/tests/test-foreign-marshal-ext.rkt diff --git a/racket/prologos/foreign.rkt b/racket/prologos/foreign.rkt index 773bfd97e..8da90f34a 100644 --- a/racket/prologos/foreign.rkt +++ b/racket/prologos/foreign.rkt @@ -5,22 +5,33 @@ ;;; Converts between Prologos values (Church/Peano encoded) and Racket values. ;;; ;;; Supported base types: -;;; Nat ↔ exact non-negative integer -;;; Bool ↔ boolean -;;; Unit ↔ void -;;; Char ↔ char -;;; String ↔ string +;;; Nat ↔ exact non-negative integer +;;; Int ↔ exact integer +;;; Rat ↔ exact rational +;;; Bool ↔ boolean +;;; Unit ↔ void +;;; Char ↔ char +;;; String ↔ string +;;; Posit8/16/32/64 ↔ exact rational (semantic value; NaR raises an error) +;;; List ↔ list of marshalled elements (recursive in T) ;;; (require racket/match racket/string - "syntax.rkt") + "syntax.rkt" + "posit-impl.rkt") (provide marshal-prologos->racket marshal-racket->prologos nat->integer integer->nat bool->boolean + int->integer + integer->int + posit->rational + rational->posit + prologos-list->racket-list + racket-list->prologos-list parse-foreign-type make-marshaller-pair base-type-name) @@ -70,22 +81,112 @@ [(expr-string v) v] [_ (error 'foreign "Cannot marshal to string — not a String literal: ~a" e)])) +;; Convert a Prologos Posit (any width) to a Racket exact rational. +;; NaR contamination raises an error since rationals cannot represent NaR. +(define (posit->rational e) + (define-values (width bits) + (match e + [(expr-posit8 v) (values 8 v)] + [(expr-posit16 v) (values 16 v)] + [(expr-posit32 v) (values 32 v)] + [(expr-posit64 v) (values 64 v)] + [_ (error 'foreign "Cannot marshal to rational — not a Posit literal: ~a" e)])) + (define r + (case width + [(8) (posit8-to-rational bits)] + [(16) (posit16-to-rational bits)] + [(32) (posit32-to-rational bits)] + [(64) (posit64-to-rational bits)])) + (when (eq? r 'nar) + (error 'foreign "Cannot marshal Posit~a NaR to rational" width)) + r) + +;; Helpers: recognize cons/nil names regardless of namespace qualification. +(define (list-cons-name? name) + (and (symbol? name) + (let ([s (symbol->string name)]) + (or (string=? s "cons") + (let ([len (string-length s)]) + (and (>= len 6) + (string=? (substring s (- len 6)) "::cons"))))))) + +(define (list-nil-name? name) + (and (symbol? name) + (let ([s (symbol->string name)]) + (or (string=? s "nil") + (let ([len (string-length s)]) + (and (>= len 5) + (string=? (substring s (- len 5)) "::nil"))))))) + +;; Walk a Prologos List value (cons/nil chain) into a Racket list of element exprs. +;; Recognizes both forms: +;; - (cons head tail) — 2-arg form, no type argument +;; - (cons A head tail) — 3-arg form with implicit type argument +;; - nil / (expr-nil) — bare nil +;; - (nil A) — nil applied to type argument +;; Errors on a stuck or non-list expression. +(define (prologos-list->racket-list e) + (let loop ([cur e] [acc '()]) + (cond + ;; (expr-nil) — built-in nil node + [(expr-nil? cur) + (reverse acc)] + ;; bare 'nil / qualified ::nil fvar + [(and (expr-fvar? cur) (list-nil-name? (expr-fvar-name cur))) + (reverse acc)] + ;; (nil A) — nil with type argument + [(and (expr-app? cur) + (let ([f (expr-app-func cur)]) + (and (expr-fvar? f) (list-nil-name? (expr-fvar-name f))))) + (reverse acc)] + ;; cons applications: 2-arg ((cons head) tail) or 3-arg (((cons A) head) tail) + [(expr-app? cur) + (define head-app (expr-app-func cur)) + (define tail (expr-app-arg cur)) + (cond + ;; ((cons head) tail) — 2-arg + [(and (expr-app? head-app) + (let ([f (expr-app-func head-app)]) + (and (expr-fvar? f) (list-cons-name? (expr-fvar-name f))))) + (loop tail (cons (expr-app-arg head-app) acc))] + ;; (((cons A) head) tail) — 3-arg with type + [(and (expr-app? head-app) + (expr-app? (expr-app-func head-app)) + (let ([f (expr-app-func (expr-app-func head-app))]) + (and (expr-fvar? f) (list-cons-name? (expr-fvar-name f))))) + (loop tail (cons (expr-app-arg head-app) acc))] + [else + (error 'foreign "Cannot marshal to list — not a cons/nil chain: ~a" e)])] + [else + (error 'foreign "Cannot marshal to list — not a cons/nil chain: ~a" e)]))) + (define (marshal-prologos->racket base-type val) - (case base-type - [(Nat) (nat->integer val)] - [(Int) (int->integer val)] - [(Rat) (rat->rational val)] - [(Bool) (bool->boolean val)] - [(Unit) (void)] - [(Char) (char->rkt-char val)] - [(String) (string->rkt-string val)] - ;; Passthrough types: the Prologos IR value IS the Racket value - [(Path Keyword Passthrough) val] + (cond + ;; Compound List type: (List ) + [(and (pair? base-type) (eq? (car base-type) 'List)) + (define inner (cadr base-type)) + (map (lambda (e) (marshal-prologos->racket inner e)) + (prologos-list->racket-list val))] + ;; Atomic types + [(symbol? base-type) + (case base-type + [(Nat) (nat->integer val)] + [(Int) (int->integer val)] + [(Rat) (rat->rational val)] + [(Bool) (bool->boolean val)] + [(Unit) (void)] + [(Char) (char->rkt-char val)] + [(String) (string->rkt-string val)] + [(Posit8 Posit16 Posit32 Posit64) (posit->rational val)] + ;; Passthrough types: the Prologos IR value IS the Racket value + [(Path Keyword Passthrough) val] + [else + (define type-str (symbol->string base-type)) + (if (string-prefix? type-str "Opaque:") + (if (expr-opaque? val) (expr-opaque-value val) val) + (error 'foreign "Unsupported marshal-in type: ~a" base-type))])] [else - (define type-str (symbol->string base-type)) - (if (string-prefix? type-str "Opaque:") - (if (expr-opaque? val) (expr-opaque-value val) val) - (error 'foreign "Unsupported marshal-in type: ~a" base-type))])) + (error 'foreign "Unsupported marshal-in type: ~a" base-type)])) ;; ======================================== ;; Racket → Prologos marshalling @@ -110,45 +211,98 @@ (error 'foreign "Cannot marshal from Racket: expected exact rational, got ~a" n)) (expr-rat n)) +;; Convert a Racket exact rational (or integer) to a Prologos Posit literal of the given width. +(define (rational->posit width n) + (unless (or (exact-integer? n) (and (exact? n) (rational? n))) + (error 'foreign + "Cannot marshal to Posit~a: expected exact integer or rational, got ~a" + width n)) + (case width + [(8) (expr-posit8 (posit8-encode n))] + [(16) (expr-posit16 (posit16-encode n))] + [(32) (expr-posit32 (posit32-encode n))] + [(64) (expr-posit64 (posit64-encode n))] + [else (error 'foreign "Unknown Posit width: ~a" width)])) + +;; Build a Prologos List value from a Racket list of element exprs. +;; Uses the bare 'cons / (expr-nil) form (no implicit type argument), which the +;; reducer/elaborator accepts and pretty-printer recognizes. +(define (racket-list->prologos-list elems) + (foldr (lambda (e acc) + (expr-app (expr-app (expr-fvar 'cons) e) acc)) + (expr-nil) + elems)) + (define (marshal-racket->prologos base-type val) - (case base-type - [(Nat) (integer->nat val)] - [(Int) (integer->int val)] - [(Rat) (rational->rat val)] - [(Bool) (if val (expr-true) (expr-false))] - [(Unit) (expr-unit)] - [(Char) (expr-char val)] - [(String) (expr-string val)] - ;; Passthrough types: result is already a Prologos IR value - [(Path Keyword Passthrough) val] + (cond + ;; Compound List type: (List ) + [(and (pair? base-type) (eq? (car base-type) 'List)) + (define inner (cadr base-type)) + (unless (list? val) + (error 'foreign "Cannot marshal to List — expected Racket list, got ~a" val)) + (racket-list->prologos-list + (map (lambda (e) (marshal-racket->prologos inner e)) val))] + ;; Atomic types + [(symbol? base-type) + (case base-type + [(Nat) (integer->nat val)] + [(Int) (integer->int val)] + [(Rat) (rational->rat val)] + [(Bool) (if val (expr-true) (expr-false))] + [(Unit) (expr-unit)] + [(Char) (expr-char val)] + [(String) (expr-string val)] + [(Posit8) (rational->posit 8 val)] + [(Posit16) (rational->posit 16 val)] + [(Posit32) (rational->posit 32 val)] + [(Posit64) (rational->posit 64 val)] + ;; Passthrough types: result is already a Prologos IR value + [(Path Keyword Passthrough) val] + [else + (define type-str (symbol->string base-type)) + (if (string-prefix? type-str "Opaque:") + (expr-opaque val (string->symbol (substring type-str 7))) + (error 'foreign "Unsupported marshal-out type: ~a" base-type))])] [else - (define type-str (symbol->string base-type)) - (if (string-prefix? type-str "Opaque:") - (expr-opaque val (string->symbol (substring type-str 7))) - (error 'foreign "Unsupported marshal-out type: ~a" base-type))])) + (error 'foreign "Unsupported marshal-out type: ~a" base-type)])) ;; ======================================== ;; Type parsing for marshalling ;; ======================================== -;; Extract base type symbol from a core type expression. -;; Returns one of: 'Nat, 'Bool, 'Unit, 'Posit8 +;; Extract base type descriptor from a core type expression. +;; Returns either: +;; - a symbol for atomic types: 'Nat, 'Int, 'Rat, 'Bool, 'Unit, 'Char, 'String, +;; 'Posit8, 'Posit16, 'Posit32, 'Posit64, 'Path, 'Keyword, 'Passthrough, +;; 'Opaque: +;; - a list (List ) for the polymorphic List type, where is +;; itself a base-type descriptor (atomic or nested List). (define (base-type-name e) (match e - [(expr-Nat) 'Nat] - [(expr-Bool) 'Bool] - [(expr-Unit) 'Unit] - [(expr-Posit8) 'Posit8] + [(expr-Nat) 'Nat] + [(expr-Bool) 'Bool] + [(expr-Unit) 'Unit] + [(expr-Posit8) 'Posit8] [(expr-Posit16) 'Posit16] [(expr-Posit32) 'Posit32] [(expr-Posit64) 'Posit64] - [(expr-Int) 'Int] - [(expr-Rat) 'Rat] - [(expr-Char) 'Char] - [(expr-String) 'String] + [(expr-Int) 'Int] + [(expr-Rat) 'Rat] + [(expr-Char) 'Char] + [(expr-String) 'String] ;; Passthrough types: Path, Keyword — Racket functions operate on IR values directly - [(expr-Path) 'Path] + [(expr-Path) 'Path] [(expr-Keyword) 'Keyword] + ;; (List A) — recognize bare and namespace-qualified List names + [(expr-app (? (lambda (f) + (and (expr-fvar? f) + (let* ([n (symbol->string (expr-fvar-name f))] + [len (string-length n)]) + (or (string=? n "List") + (and (>= len 6) + (string=? (substring n (- len 6)) "::List"))))))) + inner) + (list 'List (base-type-name inner))] ;; Any other type: passthrough (the Racket function handles IR values directly) [_ 'Passthrough])) diff --git a/racket/prologos/tests/test-foreign-marshal-ext.rkt b/racket/prologos/tests/test-foreign-marshal-ext.rkt new file mode 100644 index 000000000..6164b84e3 --- /dev/null +++ b/racket/prologos/tests/test-foreign-marshal-ext.rkt @@ -0,0 +1,345 @@ +#lang racket/base + +;;; +;;; Tests for extended FFI marshalling: Int, Posit8/16/32/64, and List. +;;; +;;; Pure unit tests for the marshalling layer in foreign.rkt — they exercise +;;; marshal-prologos->racket / marshal-racket->prologos / parse-foreign-type / +;;; base-type-name without going through the elaborator or propagator network. +;;; +;;; Companion to test-foreign.rkt (which covers the existing Nat/Bool path +;;; plus elaborator integration via process-string). +;;; + +(require rackunit + "../syntax.rkt" + "../foreign.rkt" + "../posit-impl.rkt") + +;; ======================================== +;; Int marshalling +;; ======================================== + +(test-case "ffi-ext/Int: prologos->racket basic" + (check-equal? (marshal-prologos->racket 'Int (expr-int 0)) 0) + (check-equal? (marshal-prologos->racket 'Int (expr-int 42)) 42) + (check-equal? (marshal-prologos->racket 'Int (expr-int -7)) -7)) + +(test-case "ffi-ext/Int: racket->prologos basic" + (check-equal? (marshal-racket->prologos 'Int 0) (expr-int 0)) + (check-equal? (marshal-racket->prologos 'Int 42) (expr-int 42)) + (check-equal? (marshal-racket->prologos 'Int -7) (expr-int -7))) + +(test-case "ffi-ext/Int: bignum roundtrip" + ;; Racket's exact integers are arbitrary-precision; marshal must preserve. + (define big (expt 2 200)) + (check-equal? (marshal-prologos->racket 'Int (expr-int big)) big) + (check-equal? (marshal-racket->prologos 'Int big) (expr-int big)) + (check-equal? (marshal-prologos->racket 'Int (marshal-racket->prologos 'Int big)) big)) + +(test-case "ffi-ext/Int: rejects non-integer on out" + (check-exn exn:fail? (lambda () (marshal-racket->prologos 'Int 1.5))) + (check-exn exn:fail? (lambda () (marshal-racket->prologos 'Int "not an int")))) + +(test-case "ffi-ext/Int: rejects non-int IR on in" + (check-exn exn:fail? (lambda () (marshal-prologos->racket 'Int (expr-zero)))) + (check-exn exn:fail? (lambda () (marshal-prologos->racket 'Int (expr-true))))) + +;; ======================================== +;; Posit8 marshalling +;; ======================================== + +(test-case "ffi-ext/Posit8: integer roundtrip on representable values" + ;; 0 and 1 are exactly representable in posit8. + (define p8-zero (marshal-racket->prologos 'Posit8 0)) + (check-pred expr-posit8? p8-zero) + (check-equal? (marshal-prologos->racket 'Posit8 p8-zero) 0) + (define p8-one (marshal-racket->prologos 'Posit8 1)) + (check-pred expr-posit8? p8-one) + (check-equal? (marshal-prologos->racket 'Posit8 p8-one) 1)) + +(test-case "ffi-ext/Posit8: negative roundtrip" + (define p8-neg (marshal-racket->prologos 'Posit8 -1)) + (check-pred expr-posit8? p8-neg) + (check-equal? (marshal-prologos->racket 'Posit8 p8-neg) -1)) + +(test-case "ffi-ext/Posit8: rational input encodes via posit8-encode" + ;; Use a value that's exactly representable: 1/2 fits in posit8. + (define p8 (marshal-racket->prologos 'Posit8 1/2)) + (check-pred expr-posit8? p8) + (check-equal? (marshal-prologos->racket 'Posit8 p8) 1/2)) + +(test-case "ffi-ext/Posit8: NaR contamination raises on marshal-in" + ;; posit8 NaR bit pattern is 128. + (check-exn exn:fail? + (lambda () (marshal-prologos->racket 'Posit8 (expr-posit8 128))))) + +(test-case "ffi-ext/Posit8: rejects non-numeric on out" + (check-exn exn:fail? (lambda () (marshal-racket->prologos 'Posit8 "1.0"))) + (check-exn exn:fail? (lambda () (marshal-racket->prologos 'Posit8 1.5)))) ;; inexact float + +(test-case "ffi-ext/Posit8: rejects non-Posit8 IR on in" + (check-exn exn:fail? + (lambda () (marshal-prologos->racket 'Posit8 (expr-int 1))))) + +;; ======================================== +;; Posit16 / Posit32 / Posit64 marshalling +;; ======================================== + +(test-case "ffi-ext/Posit16: small-integer roundtrip" + (for ([n (in-list '(0 1 -1 2 -2 16))]) + (define p (marshal-racket->prologos 'Posit16 n)) + (check-pred expr-posit16? p + (format "Posit16 of ~a should be expr-posit16" n)) + (check-equal? (marshal-prologos->racket 'Posit16 p) n + (format "Posit16 roundtrip ~a" n)))) + +(test-case "ffi-ext/Posit32: small-integer roundtrip" + (for ([n (in-list '(0 1 -1 2 -2 100 -100))]) + (define p (marshal-racket->prologos 'Posit32 n)) + (check-pred expr-posit32? p) + (check-equal? (marshal-prologos->racket 'Posit32 p) n + (format "Posit32 roundtrip ~a" n)))) + +(test-case "ffi-ext/Posit64: small-integer roundtrip" + (for ([n (in-list '(0 1 -1 2 -2 1000 -1000))]) + (define p (marshal-racket->prologos 'Posit64 n)) + (check-pred expr-posit64? p) + (check-equal? (marshal-prologos->racket 'Posit64 p) n + (format "Posit64 roundtrip ~a" n)))) + +(test-case "ffi-ext/Posit16: rational roundtrip" + ;; 1/4 is exactly representable across all posit widths. + (for ([w (in-list '(Posit16 Posit32 Posit64))]) + (define p (marshal-racket->prologos w 1/4)) + (check-equal? (marshal-prologos->racket w p) 1/4 + (format "~a 1/4 roundtrip" w)))) + +(test-case "ffi-ext/Posit16/32/64: NaR raises on in" + ;; NaR bit patterns: 2^(N-1) + (check-exn exn:fail? + (lambda () (marshal-prologos->racket 'Posit16 (expr-posit16 #x8000)))) + (check-exn exn:fail? + (lambda () (marshal-prologos->racket 'Posit32 (expr-posit32 #x80000000)))) + (check-exn exn:fail? + (lambda () (marshal-prologos->racket 'Posit64 + (expr-posit64 #x8000000000000000))))) + +;; ======================================== +;; posit->rational / rational->posit direct API +;; ======================================== + +(test-case "ffi-ext/posit->rational: dispatches by width on the IR" + (check-equal? (posit->rational (marshal-racket->prologos 'Posit8 1)) 1) + (check-equal? (posit->rational (marshal-racket->prologos 'Posit16 1)) 1) + (check-equal? (posit->rational (marshal-racket->prologos 'Posit32 1)) 1) + (check-equal? (posit->rational (marshal-racket->prologos 'Posit64 1)) 1)) + +(test-case "ffi-ext/rational->posit: builds the right IR width" + (check-pred expr-posit8? (rational->posit 8 1/2)) + (check-pred expr-posit16? (rational->posit 16 1/2)) + (check-pred expr-posit32? (rational->posit 32 1/2)) + (check-pred expr-posit64? (rational->posit 64 1/2))) + +;; ======================================== +;; List marshalling +;; ======================================== + +(define (mk-cons-with-type elem-type head tail) + ;; Builds (((cons elem-type) head) tail) — the form produced after elaboration + ;; with implicit type argument resolved. + (expr-app (expr-app (expr-app (expr-fvar 'cons) elem-type) head) tail)) + +(define (mk-cons-no-type head tail) + ;; Builds ((cons head) tail) — the bare form used by foreign.rkt's + ;; racket-list->prologos-list builder (no implicit type arg). + (expr-app (expr-app (expr-fvar 'cons) head) tail)) + +(test-case "ffi-ext/List: marshal-out builds cons/nil chain" + (define lst (marshal-racket->prologos '(List Int) (list 1 2 3))) + ;; Expected shape: ((cons (expr-int 1)) ((cons (expr-int 2)) ((cons (expr-int 3)) (expr-nil)))) + (check-equal? + lst + (mk-cons-no-type (expr-int 1) + (mk-cons-no-type (expr-int 2) + (mk-cons-no-type (expr-int 3) + (expr-nil)))))) + +(test-case "ffi-ext/List: marshal-in parses the bare cons/nil form" + ;; Build the same form that marshal-out produces; marshal-in should round-trip. + (define lst + (mk-cons-no-type (expr-int 1) + (mk-cons-no-type (expr-int 2) + (mk-cons-no-type (expr-int 3) + (expr-nil))))) + (check-equal? (marshal-prologos->racket '(List Int) lst) (list 1 2 3))) + +(test-case "ffi-ext/List: marshal-in parses the typed (cons A x xs) form" + ;; This is the form produced by user code like (cons Int 1 (cons Int 2 (nil Int))). + (define lst + (mk-cons-with-type (expr-Int) (expr-int 1) + (mk-cons-with-type (expr-Int) (expr-int 2) + (mk-cons-with-type (expr-Int) (expr-int 3) + (expr-app (expr-fvar 'nil) (expr-Int)))))) + (check-equal? (marshal-prologos->racket '(List Int) lst) (list 1 2 3))) + +(test-case "ffi-ext/List: marshal-in accepts qualified ::cons / ::nil names" + (define cons-q (expr-fvar 'prologos::data::list::cons)) + (define nil-q (expr-fvar 'prologos::data::list::nil)) + (define lst + (expr-app (expr-app cons-q (expr-int 10)) + (expr-app (expr-app cons-q (expr-int 20)) + nil-q))) + (check-equal? (marshal-prologos->racket '(List Int) lst) (list 10 20))) + +(test-case "ffi-ext/List: empty list (expr-nil) roundtrip" + (check-equal? (marshal-racket->prologos '(List Int) '()) (expr-nil)) + (check-equal? (marshal-prologos->racket '(List Int) (expr-nil)) '())) + +(test-case "ffi-ext/List: empty list bare 'nil fvar" + (check-equal? (marshal-prologos->racket '(List Int) (expr-fvar 'nil)) '())) + +(test-case "ffi-ext/List: full roundtrip Int list" + (for ([xs (in-list '(() (1) (1 2 3) (-5 0 100)))]) + (define ir (marshal-racket->prologos '(List Int) xs)) + (check-equal? (marshal-prologos->racket '(List Int) ir) xs + (format "Int list roundtrip ~a" xs)))) + +(test-case "ffi-ext/List: roundtrip of List Nat" + (for ([xs (in-list '(() (0) (0 1 2 3 5)))]) + (define ir (marshal-racket->prologos '(List Nat) xs)) + (check-equal? (marshal-prologos->racket '(List Nat) ir) xs + (format "Nat list roundtrip ~a" xs)))) + +(test-case "ffi-ext/List: roundtrip of List String" + (define xs '("alpha" "beta" "gamma")) + (define ir (marshal-racket->prologos '(List String) xs)) + (check-equal? (marshal-prologos->racket '(List String) ir) xs)) + +(test-case "ffi-ext/List: roundtrip of List Bool" + (define xs '(#t #f #t)) + (define ir (marshal-racket->prologos '(List Bool) xs)) + (check-equal? (marshal-prologos->racket '(List Bool) ir) xs)) + +(test-case "ffi-ext/List: roundtrip of List Posit8 with rationals" + (define xs '(0 1 -1 1/2)) + (define ir (marshal-racket->prologos '(List Posit8) xs)) + (check-equal? (marshal-prologos->racket '(List Posit8) ir) xs)) + +(test-case "ffi-ext/List: nested List (List (List Int))" + (define xs '((1 2) (3) () (4 5 6))) + (define ir (marshal-racket->prologos '(List (List Int)) xs)) + (check-equal? (marshal-prologos->racket '(List (List Int)) ir) xs)) + +(test-case "ffi-ext/List: marshal-out rejects non-list value" + (check-exn exn:fail? + (lambda () (marshal-racket->prologos '(List Int) 42)))) + +(test-case "ffi-ext/List: marshal-in rejects non-list IR" + (check-exn exn:fail? + (lambda () (marshal-prologos->racket '(List Int) (expr-int 1))))) + +;; ======================================== +;; base-type-name with new types +;; ======================================== + +(test-case "ffi-ext/base-type-name: atomic Int / Posits" + (check-equal? (base-type-name (expr-Int)) 'Int) + (check-equal? (base-type-name (expr-Posit8)) 'Posit8) + (check-equal? (base-type-name (expr-Posit16)) 'Posit16) + (check-equal? (base-type-name (expr-Posit32)) 'Posit32) + (check-equal? (base-type-name (expr-Posit64)) 'Posit64)) + +(test-case "ffi-ext/base-type-name: (List Int)" + (define ty (expr-app (expr-fvar 'List) (expr-Int))) + (check-equal? (base-type-name ty) '(List Int))) + +(test-case "ffi-ext/base-type-name: (List Nat)" + (define ty (expr-app (expr-fvar 'List) (expr-Nat))) + (check-equal? (base-type-name ty) '(List Nat))) + +(test-case "ffi-ext/base-type-name: (List Posit32)" + (define ty (expr-app (expr-fvar 'List) (expr-Posit32))) + (check-equal? (base-type-name ty) '(List Posit32))) + +(test-case "ffi-ext/base-type-name: nested (List (List Int))" + (define ty (expr-app (expr-fvar 'List) + (expr-app (expr-fvar 'List) (expr-Int)))) + (check-equal? (base-type-name ty) '(List (List Int)))) + +(test-case "ffi-ext/base-type-name: qualified ::List name" + (define ty (expr-app (expr-fvar 'prologos::data::list::List) (expr-Int))) + (check-equal? (base-type-name ty) '(List Int))) + +;; ======================================== +;; parse-foreign-type with new types +;; ======================================== + +(test-case "ffi-ext/parse-foreign-type: Int -> Int" + (define ty (expr-Pi 'w (expr-Int) (expr-Int))) + (check-equal? (parse-foreign-type ty) (cons '(Int) 'Int))) + +(test-case "ffi-ext/parse-foreign-type: Int -> Int -> Int" + (define ty (expr-Pi 'w (expr-Int) (expr-Pi 'w (expr-Int) (expr-Int)))) + (check-equal? (parse-foreign-type ty) (cons '(Int Int) 'Int))) + +(test-case "ffi-ext/parse-foreign-type: Posit8 -> Posit8" + (define ty (expr-Pi 'w (expr-Posit8) (expr-Posit8))) + (check-equal? (parse-foreign-type ty) (cons '(Posit8) 'Posit8))) + +(test-case "ffi-ext/parse-foreign-type: Posit16 Posit16 -> Posit16" + (define ty (expr-Pi 'w (expr-Posit16) (expr-Pi 'w (expr-Posit16) (expr-Posit16)))) + (check-equal? (parse-foreign-type ty) (cons '(Posit16 Posit16) 'Posit16))) + +(test-case "ffi-ext/parse-foreign-type: (List Int) -> Int" + (define list-int (expr-app (expr-fvar 'List) (expr-Int))) + (define ty (expr-Pi 'w list-int (expr-Int))) + (check-equal? (parse-foreign-type ty) (cons '((List Int)) 'Int))) + +(test-case "ffi-ext/parse-foreign-type: Int -> (List Int)" + (define list-int (expr-app (expr-fvar 'List) (expr-Int))) + (define ty (expr-Pi 'w (expr-Int) list-int)) + (check-equal? (parse-foreign-type ty) (cons '(Int) '(List Int)))) + +(test-case "ffi-ext/parse-foreign-type: (List Int) -> (List Int) -> (List Int)" + (define list-int (expr-app (expr-fvar 'List) (expr-Int))) + (define ty (expr-Pi 'w list-int (expr-Pi 'w list-int list-int))) + (check-equal? (parse-foreign-type ty) + (cons '((List Int) (List Int)) '(List Int)))) + +;; ======================================== +;; make-marshaller-pair: end-to-end via parsed types +;; ======================================== + +(test-case "ffi-ext/make-marshaller-pair: Int -> Int" + (define parsed (cons '(Int) 'Int)) + (define-values (ins out) (make-marshaller-pair parsed)) + (check-equal? (length ins) 1) + (check-equal? ((car ins) (expr-int 5)) 5) + (check-equal? (out 7) (expr-int 7))) + +(test-case "ffi-ext/make-marshaller-pair: Posit8 -> Posit8" + (define parsed (cons '(Posit8) 'Posit8)) + (define-values (ins out) (make-marshaller-pair parsed)) + (define p (out 1)) + (check-pred expr-posit8? p) + (check-equal? ((car ins) p) 1)) + +(test-case "ffi-ext/make-marshaller-pair: (List Int) -> Int (sum semantics)" + ;; Simulate calling Racket's apply + on a marshalled List Int input. + (define parsed (cons '((List Int)) 'Int)) + (define-values (ins out) (make-marshaller-pair parsed)) + (define racket-input ((car ins) (marshal-racket->prologos '(List Int) '(1 2 3 4)))) + (check-equal? racket-input '(1 2 3 4)) + (check-equal? (out (apply + racket-input)) (expr-int 10))) + +(test-case "ffi-ext/make-marshaller-pair: Int -> (List Int) (range semantics)" + ;; Simulate calling a Racket range function that returns a List Int. + (define parsed (cons '(Int) '(List Int))) + (define-values (ins out) (make-marshaller-pair parsed)) + (define n ((car ins) (expr-int 4))) + (check-equal? n 4) + (define racket-result (build-list n (lambda (i) i))) + (check-equal? racket-result '(0 1 2 3)) + (define ir-result (out racket-result)) + (check-equal? (marshal-prologos->racket '(List Int) ir-result) '(0 1 2 3))) From a4c2004f54260976aa84d93ed021a73bf2f2d77a Mon Sep 17 00:00:00 2001 From: Claude Date: Tue, 28 Apr 2026 04:03:23 +0000 Subject: [PATCH 2/6] ffi/tests: integration tests for Int / Posit / List foreign types Adds 14 end-to-end test cases to test-foreign.rkt that exercise the new marshallers through the full elaborator + reduction pipeline (the unit tests in test-foreign-marshal-ext.rkt only cover the marshal layer in isolation): - Int: add1, +, -, * with negatives and bignums. - Posit8/16/32/64: arithmetic round-trip with bit-pattern literals; Posit64 verified via type inference. - List: passing (List Int) / (List Nat) to Racket's `length`, `reverse`, and `list` constructor; tests cover empty lists, list-returning Racket calls, and round-trips through `reverse`. Tests that need List in scope use a `(ns t-foreign-list)` prefix so the prelude auto-imports the data::list module. Verified with the targeted- test runner: tests/test-foreign-marshal-ext.rkt + tests/test-foreign.rkt + tests/test-foreign-block.rkt all pass on Racket v9.1 (114 tests / 8s). --- racket/prologos/tests/test-foreign.rkt | 138 +++++++++++++++++++++++++ 1 file changed, 138 insertions(+) diff --git a/racket/prologos/tests/test-foreign.rkt b/racket/prologos/tests/test-foreign.rkt index 104c5fd04..280fc7090 100644 --- a/racket/prologos/tests/test-foreign.rkt +++ b/racket/prologos/tests/test-foreign.rkt @@ -376,3 +376,141 @@ (lambda () (run-ns "(foreign racket \"racket/base\" :as rkt)")))) + +;; ======================================== +;; Integration tests: Int, Posit, and List FFI types +;; ======================================== +;; These exercise marshal-prologos->racket / marshal-racket->prologos through +;; the full elaborator pipeline, complementing the pure unit tests in +;; test-foreign-marshal-ext.rkt. Tests that need `List` in scope use a `ns` +;; prefix to trigger prelude auto-import. + +(define list-prelude "(ns t-foreign-list)\n") + +(test-case "foreign/Int-add1-eval" + ;; add1 imported as Int -> Int (Racket's add1 works on any exact integer). + (check-contains + (run-ns-last + "(foreign racket \"racket/base\" (add1 : Int -> Int)) + (eval (add1 (int 5)))") + "6 : Int")) + +(test-case "foreign/Int-plus-two-args" + ;; Two-arg Int -> Int -> Int aliased to int+ to avoid clashing with the + ;; macro-resolved `+` reduction rule on Int literals. + (check-contains + (run-ns-last + "(foreign racket \"racket/base\" (+ :as int-plus : Int -> Int -> Int)) + (eval (int-plus (int 3) (int 4)))") + "7 : Int")) + +(test-case "foreign/Int-negative" + ;; Negative Int input/output round-trip through marshalling. + (check-contains + (run-ns-last + "(foreign racket \"racket/base\" (- :as int-sub : Int -> Int -> Int)) + (eval (int-sub (int 3) (int 10)))") + "-7 : Int")) + +(test-case "foreign/Int-bignum-roundtrip" + ;; Racket bignum × bignum should preserve precision through marshalling. + (check-contains + (run-ns-last + "(foreign racket \"racket/base\" (* :as int-mul : Int -> Int -> Int)) + (eval (int-mul (int 1000000) (int 1000000)))") + "1000000000000 : Int")) + +(test-case "foreign/Posit8-add1" + ;; Racket's add1 works on rationals (1 + bits-decoded-as-rational). + ;; (posit8 64) is the value 1.0; add1 → 2.0; encoded back to bits. + (define result + (run-ns-last + "(foreign racket \"racket/base\" (add1 :as p8-rat-inc : Posit8 -> Posit8)) + (check (p8-rat-inc (posit8 64)) )")) + (check-contains result "OK")) + +(test-case "foreign/Posit16-roundtrip-via-identity" + ;; values: (posit16 16384) = 1.0 exact in posit16. + ;; Use Racket's identity-style call: we go IR → rational → IR through marshal. + (check-contains + (run-ns-last + "(foreign racket \"racket/base\" (add1 :as p16-rat-inc : Posit16 -> Posit16)) + (check (p16-rat-inc (posit16 16384)) )") + "OK")) + +(test-case "foreign/Posit32-add" + ;; Two-arg Racket + on rationals through Posit32 marshalling. + ;; (posit32 1073741824) = 1.0 in posit32. + (check-contains + (run-ns-last + "(foreign racket \"racket/base\" (+ :as p32-rat-add : Posit32 -> Posit32 -> Posit32)) + (check (p32-rat-add (posit32 1073741824) (posit32 1073741824)) )") + "OK")) + +(test-case "foreign/Posit64-passes-through" + ;; Type-check only: ensures Posit64 is accepted in foreign type positions + ;; and the marshaller pair is built without error. + (check-contains + (run-ns-last + "(foreign racket \"racket/base\" (add1 :as p64-rat-inc : Posit64 -> Posit64)) + (infer p64-rat-inc)") + "Posit64")) + +(test-case "foreign/List-Int-length" + ;; Pass a List of Ints to Racket's `length`, get back a Nat. + (check-contains + (run-ns-last + (string-append list-prelude + "(foreign racket \"racket/base\" (length :as rkt-length : (List Int) -> Nat)) + (eval (rkt-length (cons Int (int 1) (cons Int (int 2) (cons Int (int 3) (nil Int))))))")) + "3N : Nat")) + +(test-case "foreign/List-Int-empty" + ;; Empty list of Ints should marshal as () and length should be 0. + (check-contains + (run-ns-last + (string-append list-prelude + "(foreign racket \"racket/base\" (length :as rkt-length : (List Int) -> Nat)) + (eval (rkt-length (nil Int)))")) + "0N : Nat")) + +(test-case "foreign/List-Nat-length" + ;; Nat element marshalling inside a list. + (check-contains + (run-ns-last + (string-append list-prelude + "(foreign racket \"racket/base\" (length :as rkt-length : (List Nat) -> Nat)) + (eval (rkt-length (cons Nat zero (cons Nat (suc zero) (nil Nat)))))")) + "2N : Nat")) + +(test-case "foreign/List-Int-infer-type" + ;; Type checks: foreign declaration with (List Int) in arg position + ;; produces a function with that signature. + (check-contains + (run-ns-last + (string-append list-prelude + "(foreign racket \"racket/base\" (length :as rkt-length : (List Int) -> Nat)) + (infer rkt-length)")) + "List")) + +(test-case "foreign/List-Int-return-from-racket" + ;; Racket's `list` returns a list — typed as (List Int). + ;; (list 10 20 30) on the Racket side returns a 3-element list, which the + ;; marshaller encodes back into a Prologos cons/nil chain. + (check-contains + (run-ns-last + (string-append list-prelude + "(foreign racket \"racket/base\" (list :as rkt-list-of-3 : Int -> Int -> Int -> (List Int))) + (foreign racket \"racket/base\" (length :as rkt-length : (List Int) -> Nat)) + (eval (rkt-length (rkt-list-of-3 (int 10) (int 20) (int 30))))")) + "3N : Nat")) + +(test-case "foreign/List-Int-roundtrip-via-reverse" + ;; Send a Prologos list to Racket's `reverse`, then count the result. + (check-contains + (run-ns-last + (string-append list-prelude + "(foreign racket \"racket/base\" (reverse :as rkt-reverse : (List Int) -> (List Int))) + (foreign racket \"racket/base\" (length :as rkt-length : (List Int) -> Nat)) + (eval (rkt-length (rkt-reverse (cons Int (int 1) (cons Int (int 2) (cons Int (int 3) (nil Int)))))))")) + "3N : Nat")) From e29f89bb9c432d6ae6ec2a847626253e37775cc4 Mon Sep 17 00:00:00 2001 From: Claude Date: Tue, 28 Apr 2026 04:04:11 +0000 Subject: [PATCH 3/6] chore: refresh benchmark + .pnet cache artifacts from Racket 9.1 run MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Run artifacts produced by tools/run-affected-tests.rkt while validating the FFI Posit/Int/List work against the locally-built Racket v9.1 host: - timings.jsonl: appends one entry for the targeted-test run (114 tests, 8.2s) - last-run-summary.txt: refreshed pointer to the same run - nat.pnet: cache rebuilt by the prelude reload under the new Racket version Pure artifact churn — no code changes. --- racket/prologos/data/benchmarks/last-run-summary.txt | 2 +- racket/prologos/data/benchmarks/timings.jsonl | 1 + racket/prologos/data/cache/pnet/prologos/data/nat.pnet | 2 +- 3 files changed, 3 insertions(+), 2 deletions(-) diff --git a/racket/prologos/data/benchmarks/last-run-summary.txt b/racket/prologos/data/benchmarks/last-run-summary.txt index f641c27a7..95c23e1a5 100644 --- a/racket/prologos/data/benchmarks/last-run-summary.txt +++ b/racket/prologos/data/benchmarks/last-run-summary.txt @@ -1 +1 @@ -7529 tests in 124.6s (383 files, 10 workers, all pass) +114 tests in 8.2s (3 files, 3 workers, all pass) diff --git a/racket/prologos/data/benchmarks/timings.jsonl b/racket/prologos/data/benchmarks/timings.jsonl index 0ab5d6db3..651e24dfb 100644 --- a/racket/prologos/data/benchmarks/timings.jsonl +++ b/racket/prologos/data/benchmarks/timings.jsonl @@ -710,3 +710,4 @@ {"all_pass":false,"branch":"main","commit":"9707aeea","file_count":383,"jobs":10,"machine":"macosx-aarch64","results":[{"file":"test-architecture-d-02.rkt","status":"pass","tests":7,"wall_ms":138},{"cell_metrics":{"cells":18,"propagators":0},"file":"test-abstract-interpretation-e2e.rkt","heartbeats":{"cell_allocs":104,"constraint_count":0,"constraint_retries":0,"elaborate_steps":28,"infer_steps":88,"meta_created":8,"meta_solved":8,"prop_allocs":0,"prop_firings":0,"reduce_steps":221,"resolution_cycles":8,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":42,"zonk_steps":120},"memory":{"gc_ms":47,"mem_after_bytes":135837600,"mem_before_bytes":135777896,"mem_retained_bytes":59704},"phases":{"elaborate_ms":38,"parse_ms":0,"qtt_ms":0,"reduce_ms":165,"trait_resolve_ms":0,"type_check_ms":182,"zonk_ms":0},"status":"pass","tests":12,"wall_ms":1367},{"file":"test-bilattice-01.rkt","status":"pass","tests":20,"wall_ms":159},{"cell_metrics":{"cells":23,"propagators":0},"file":"test-bound-args-01.rkt","heartbeats":{"cell_allocs":220,"constraint_count":0,"constraint_retries":0,"elaborate_steps":83,"infer_steps":91,"meta_created":0,"meta_solved":0,"prop_allocs":0,"prop_firings":0,"reduce_steps":104,"resolution_cycles":0,"solver_backtracks":4,"solver_unifies":19,"trait_resolve_steps":0,"unify_steps":0,"zonk_steps":99},"memory":{"gc_ms":53,"mem_after_bytes":137056640,"mem_before_bytes":137049336,"mem_retained_bytes":7304},"phases":{"elaborate_ms":21,"parse_ms":0,"qtt_ms":0,"reduce_ms":50,"trait_resolve_ms":0,"type_check_ms":28,"zonk_ms":0},"status":"pass","tests":8,"wall_ms":1080},{"cell_metrics":{"cells":19,"propagators":0},"file":"test-approx-literal.rkt","heartbeats":{"cell_allocs":220,"constraint_count":0,"constraint_retries":0,"elaborate_steps":25,"infer_steps":22,"meta_created":0,"meta_solved":0,"prop_allocs":0,"prop_firings":0,"reduce_steps":31,"resolution_cycles":0,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":8,"zonk_steps":34},"memory":{"gc_ms":43,"mem_after_bytes":135345280,"mem_before_bytes":135363368,"mem_retained_bytes":0},"phases":{"elaborate_ms":6,"parse_ms":0,"qtt_ms":4,"reduce_ms":17,"trait_resolve_ms":0,"type_check_ms":9,"zonk_ms":0},"status":"pass","tests":22,"wall_ms":1170},{"cell_metrics":{"cells":31,"propagators":3},"file":"test-bare-methods.rkt","heartbeats":{"cell_allocs":524,"constraint_count":0,"constraint_retries":0,"elaborate_steps":284,"infer_steps":270,"meta_created":17,"meta_solved":17,"prop_allocs":0,"prop_firings":0,"reduce_steps":873,"resolution_cycles":16,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":174,"zonk_steps":421},"memory":{"gc_ms":51,"mem_after_bytes":136701920,"mem_before_bytes":136694200,"mem_retained_bytes":7720},"phases":{"elaborate_ms":108,"parse_ms":0,"qtt_ms":141,"reduce_ms":625,"trait_resolve_ms":0,"type_check_ms":289,"zonk_ms":0},"status":"pass","tests":12,"wall_ms":2493},{"file":"test-architecture-selection-01.rkt","status":"pass","tests":18,"wall_ms":170},{"cell_metrics":{"cells":28,"propagators":3},"file":"test-bundles.rkt","heartbeats":{"cell_allocs":212,"constraint_count":0,"constraint_retries":0,"elaborate_steps":124,"infer_steps":116,"meta_created":8,"meta_solved":8,"prop_allocs":0,"prop_firings":0,"reduce_steps":328,"resolution_cycles":8,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":80,"zonk_steps":188},"memory":{"gc_ms":52,"mem_after_bytes":138130616,"mem_before_bytes":138175272,"mem_retained_bytes":0},"phases":{"elaborate_ms":57,"parse_ms":0,"qtt_ms":77,"reduce_ms":236,"trait_resolve_ms":0,"type_check_ms":140,"zonk_ms":0},"status":"pass","tests":17,"wall_ms":1145},{"cell_metrics":{"cells":31,"propagators":0},"file":"test-capability-01.rkt","heartbeats":{"cell_allocs":226,"constraint_count":0,"constraint_retries":0,"elaborate_steps":2,"infer_steps":2,"meta_created":0,"meta_solved":0,"prop_allocs":0,"prop_firings":0,"reduce_steps":0,"resolution_cycles":0,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":0,"zonk_steps":2},"memory":{"gc_ms":49,"mem_after_bytes":137400368,"mem_before_bytes":137290568,"mem_retained_bytes":109800},"phases":{"elaborate_ms":0,"parse_ms":0,"qtt_ms":0,"reduce_ms":0,"trait_resolve_ms":0,"type_check_ms":0,"zonk_ms":0},"status":"pass","tests":11,"wall_ms":1042},{"cell_metrics":{"cells":25,"propagators":0},"file":"test-capability-02.rkt","heartbeats":{"cell_allocs":214,"constraint_count":0,"constraint_retries":0,"elaborate_steps":18,"infer_steps":18,"meta_created":0,"meta_solved":0,"prop_allocs":0,"prop_firings":0,"reduce_steps":10,"resolution_cycles":0,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":0,"zonk_steps":6},"memory":{"gc_ms":47,"mem_after_bytes":135744800,"mem_before_bytes":135729096,"mem_retained_bytes":15704},"phases":{"elaborate_ms":3,"parse_ms":0,"qtt_ms":0,"reduce_ms":0,"trait_resolve_ms":0,"type_check_ms":12,"zonk_ms":1},"status":"pass","tests":13,"wall_ms":971},{"file":"test-atms-types.rkt","status":"pass","tests":37,"wall_ms":316},{"cell_metrics":{"cells":14,"propagators":0},"file":"test-atms-integration.rkt","heartbeats":{"cell_allocs":128,"constraint_count":0,"constraint_retries":0,"elaborate_steps":33,"infer_steps":42,"meta_created":0,"meta_solved":0,"prop_allocs":0,"prop_firings":0,"reduce_steps":33,"resolution_cycles":0,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":13,"zonk_steps":18},"memory":{"gc_ms":50,"mem_after_bytes":134930280,"mem_before_bytes":134930224,"mem_retained_bytes":56},"phases":{"elaborate_ms":11,"parse_ms":0,"qtt_ms":0,"reduce_ms":9,"trait_resolve_ms":0,"type_check_ms":36,"zonk_ms":0},"status":"pass","tests":11,"wall_ms":1226},{"file":"test-atms.rkt","status":"pass","tests":42,"wall_ms":367},{"cell_metrics":{"cells":27,"propagators":0},"file":"test-call-site-specialization.rkt","heartbeats":{"cell_allocs":681,"constraint_count":0,"constraint_retries":0,"elaborate_steps":229,"infer_steps":240,"meta_created":0,"meta_solved":0,"prop_allocs":0,"prop_firings":0,"reduce_steps":488,"resolution_cycles":0,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":155,"zonk_steps":275},"memory":{"gc_ms":59,"mem_after_bytes":137460688,"mem_before_bytes":137507928,"mem_retained_bytes":0},"phases":{"elaborate_ms":76,"parse_ms":0,"qtt_ms":226,"reduce_ms":344,"trait_resolve_ms":0,"type_check_ms":306,"zonk_ms":0},"status":"pass","tests":8,"wall_ms":2010},{"cell_metrics":{"cells":35,"propagators":0},"file":"test-capability-03.rkt","heartbeats":{"cell_allocs":440,"constraint_count":0,"constraint_retries":0,"elaborate_steps":4,"infer_steps":4,"meta_created":0,"meta_solved":0,"prop_allocs":0,"prop_firings":0,"reduce_steps":2,"resolution_cycles":0,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":0,"zonk_steps":2},"memory":{"gc_ms":50,"mem_after_bytes":138775104,"mem_before_bytes":138631752,"mem_retained_bytes":143352},"phases":{"elaborate_ms":1,"parse_ms":0,"qtt_ms":0,"reduce_ms":0,"trait_resolve_ms":0,"type_check_ms":3,"zonk_ms":0},"status":"pass","tests":11,"wall_ms":1077},{"cell_metrics":{"cells":31,"propagators":0},"file":"test-capability-05.rkt","heartbeats":{"cell_allocs":7371,"constraint_count":0,"constraint_retries":0,"elaborate_steps":59,"infer_steps":48,"meta_created":1,"meta_solved":1,"prop_allocs":0,"prop_firings":0,"reduce_steps":30,"resolution_cycles":1,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":39,"zonk_steps":63},"memory":{"gc_ms":51,"mem_after_bytes":137029680,"mem_before_bytes":136919720,"mem_retained_bytes":109960},"phases":{"elaborate_ms":29,"parse_ms":0,"qtt_ms":17,"reduce_ms":0,"trait_resolve_ms":0,"type_check_ms":26,"zonk_ms":0},"status":"pass","tests":21,"wall_ms":1337},{"cell_metrics":{"cells":48,"propagators":0},"file":"test-auto-implicits.rkt","heartbeats":{"cell_allocs":1157,"constraint_count":0,"constraint_retries":0,"elaborate_steps":276,"infer_steps":231,"meta_created":19,"meta_solved":19,"prop_allocs":0,"prop_firings":0,"reduce_steps":430,"resolution_cycles":19,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":155,"zonk_steps":389},"memory":{"gc_ms":50,"mem_after_bytes":135157592,"mem_before_bytes":135177032,"mem_retained_bytes":0},"phases":{"elaborate_ms":132,"parse_ms":0,"qtt_ms":63,"reduce_ms":166,"trait_resolve_ms":0,"type_check_ms":218,"zonk_ms":0},"status":"pass","tests":15,"wall_ms":2573},{"file":"test-champ-owner-id.rkt","status":"pass","tests":17,"wall_ms":172},{"cell_metrics":{"cells":21,"propagators":0},"file":"test-arity-checking.rkt","heartbeats":{"cell_allocs":265,"constraint_count":0,"constraint_retries":0,"elaborate_steps":95,"infer_steps":98,"meta_created":1,"meta_solved":1,"prop_allocs":0,"prop_firings":0,"reduce_steps":116,"resolution_cycles":1,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":41,"zonk_steps":100},"memory":{"gc_ms":50,"mem_after_bytes":135880744,"mem_before_bytes":135808104,"mem_retained_bytes":72640},"phases":{"elaborate_ms":38,"parse_ms":0,"qtt_ms":9,"reduce_ms":91,"trait_resolve_ms":0,"type_check_ms":97,"zonk_ms":1},"status":"pass","tests":16,"wall_ms":1953},{"cell_metrics":{"cells":17,"propagators":0},"file":"test-capability-06.rkt","heartbeats":{"cell_allocs":11419,"constraint_count":0,"constraint_retries":0,"elaborate_steps":11,"infer_steps":12,"meta_created":1,"meta_solved":1,"prop_allocs":0,"prop_firings":0,"reduce_steps":6,"resolution_cycles":1,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":9,"zonk_steps":15},"memory":{"gc_ms":50,"mem_after_bytes":136105656,"mem_before_bytes":136065960,"mem_retained_bytes":39696},"phases":{"elaborate_ms":5,"parse_ms":0,"qtt_ms":5,"reduce_ms":0,"trait_resolve_ms":0,"type_check_ms":7,"zonk_ms":0},"status":"pass","tests":16,"wall_ms":1832},{"cell_metrics":{"cells":61,"propagators":0},"file":"test-capability-04.rkt","heartbeats":{"cell_allocs":1057,"constraint_count":0,"constraint_retries":0,"elaborate_steps":219,"infer_steps":196,"meta_created":9,"meta_solved":4,"prop_allocs":0,"prop_firings":0,"reduce_steps":118,"resolution_cycles":4,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":138,"zonk_steps":215},"memory":{"gc_ms":48,"mem_after_bytes":137843256,"mem_before_bytes":137740760,"mem_retained_bytes":102496},"phases":{"elaborate_ms":87,"parse_ms":0,"qtt_ms":56,"reduce_ms":0,"trait_resolve_ms":0,"type_check_ms":92,"zonk_ms":0},"status":"pass","tests":12,"wall_ms":2124},{"cell_metrics":{"cells":17,"propagators":0},"file":"test-coherence.rkt","heartbeats":{"cell_allocs":48,"constraint_count":0,"constraint_retries":0,"elaborate_steps":13,"infer_steps":11,"meta_created":0,"meta_solved":0,"prop_allocs":0,"prop_firings":0,"reduce_steps":77,"resolution_cycles":0,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":0,"zonk_steps":14},"memory":{"gc_ms":48,"mem_after_bytes":137901040,"mem_before_bytes":137909528,"mem_retained_bytes":0},"phases":{"elaborate_ms":2,"parse_ms":0,"qtt_ms":0,"reduce_ms":59,"trait_resolve_ms":0,"type_check_ms":7,"zonk_ms":0},"status":"pass","tests":13,"wall_ms":517},{"cell_metrics":{"cells":41,"propagators":0},"file":"test-capability-08.rkt","heartbeats":{"cell_allocs":11899,"constraint_count":0,"constraint_retries":0,"elaborate_steps":125,"infer_steps":109,"meta_created":5,"meta_solved":5,"prop_allocs":0,"prop_firings":0,"reduce_steps":136,"resolution_cycles":5,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":87,"zonk_steps":145},"memory":{"gc_ms":54,"mem_after_bytes":139024976,"mem_before_bytes":138879896,"mem_retained_bytes":145080},"phases":{"elaborate_ms":46,"parse_ms":0,"qtt_ms":38,"reduce_ms":0,"trait_resolve_ms":0,"type_check_ms":48,"zonk_ms":0},"status":"pass","tests":19,"wall_ms":1962},{"cell_metrics":{"cells":71,"propagators":0},"file":"test-capability-07.rkt","heartbeats":{"cell_allocs":2767,"constraint_count":0,"constraint_retries":0,"elaborate_steps":188,"infer_steps":152,"meta_created":5,"meta_solved":3,"prop_allocs":0,"prop_firings":0,"reduce_steps":107,"resolution_cycles":3,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":96,"zonk_steps":204},"memory":{"gc_ms":51,"mem_after_bytes":139109760,"mem_before_bytes":137897896,"mem_retained_bytes":1211864},"phases":{"elaborate_ms":59,"parse_ms":0,"qtt_ms":49,"reduce_ms":0,"trait_resolve_ms":0,"type_check_ms":70,"zonk_ms":1},"status":"pass","tests":19,"wall_ms":2598},{"cell_metrics":{"cells":18,"propagators":0},"file":"test-abstract-domains.rkt","heartbeats":{"cell_allocs":308,"constraint_count":0,"constraint_retries":0,"elaborate_steps":60,"infer_steps":174,"meta_created":16,"meta_solved":16,"prop_allocs":0,"prop_firings":0,"reduce_steps":487,"resolution_cycles":16,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":72,"zonk_steps":269},"memory":{"gc_ms":45,"mem_after_bytes":135894088,"mem_before_bytes":135126176,"mem_retained_bytes":767912},"phases":{"elaborate_ms":109,"parse_ms":0,"qtt_ms":2,"reduce_ms":429,"trait_resolve_ms":0,"type_check_ms":517,"zonk_ms":0},"status":"pass","tests":18,"wall_ms":4906},{"cell_metrics":{"cells":17,"propagators":0},"file":"test-coercion-warnings.rkt","heartbeats":{"cell_allocs":208,"constraint_count":0,"constraint_retries":0,"elaborate_steps":41,"infer_steps":41,"meta_created":0,"meta_solved":0,"prop_allocs":0,"prop_firings":0,"reduce_steps":47,"resolution_cycles":0,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":0,"zonk_steps":48},"memory":{"gc_ms":47,"mem_after_bytes":136075120,"mem_before_bytes":136075224,"mem_retained_bytes":0},"phases":{"elaborate_ms":13,"parse_ms":0,"qtt_ms":0,"reduce_ms":23,"trait_resolve_ms":0,"type_check_ms":14,"zonk_ms":0},"status":"pass","tests":13,"wall_ms":1445},{"cell_metrics":{"cells":17,"propagators":0},"file":"test-collection-conversions.rkt","heartbeats":{"cell_allocs":163,"constraint_count":0,"constraint_retries":0,"elaborate_steps":35,"infer_steps":80,"meta_created":3,"meta_solved":3,"prop_allocs":0,"prop_firings":0,"reduce_steps":150,"resolution_cycles":3,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":24,"zonk_steps":127},"memory":{"gc_ms":49,"mem_after_bytes":138278928,"mem_before_bytes":138278280,"mem_retained_bytes":648},"phases":{"elaborate_ms":15,"parse_ms":0,"qtt_ms":0,"reduce_ms":151,"trait_resolve_ms":0,"type_check_ms":75,"zonk_ms":0},"status":"pass","tests":11,"wall_ms":1576},{"cell_metrics":{"cells":17,"propagators":0},"file":"test-collection-traits-01.rkt","heartbeats":{"cell_allocs":256,"constraint_count":0,"constraint_retries":0,"elaborate_steps":35,"infer_steps":62,"meta_created":0,"meta_solved":0,"prop_allocs":0,"prop_firings":0,"reduce_steps":98,"resolution_cycles":0,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":14,"zonk_steps":694},"memory":{"gc_ms":45,"mem_after_bytes":134781176,"mem_before_bytes":134802528,"mem_retained_bytes":0},"phases":{"elaborate_ms":8,"parse_ms":0,"qtt_ms":0,"reduce_ms":138,"trait_resolve_ms":0,"type_check_ms":44,"zonk_ms":0},"status":"pass","tests":10,"wall_ms":1472},{"cell_metrics":{"cells":87,"propagators":0},"file":"test-capability-05b.rkt","heartbeats":{"cell_allocs":12581,"constraint_count":0,"constraint_retries":0,"elaborate_steps":369,"infer_steps":333,"meta_created":17,"meta_solved":16,"prop_allocs":0,"prop_firings":0,"reduce_steps":190,"resolution_cycles":16,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":262,"zonk_steps":436},"memory":{"gc_ms":49,"mem_after_bytes":138718536,"mem_before_bytes":138662592,"mem_retained_bytes":55944},"phases":{"elaborate_ms":143,"parse_ms":0,"qtt_ms":112,"reduce_ms":0,"trait_resolve_ms":0,"type_check_ms":168,"zonk_ms":0},"status":"pass","tests":24,"wall_ms":4200},{"file":"test-config-audit.rkt","status":"pass","tests":39,"wall_ms":316},{"cell_metrics":{"cells":17,"propagators":0},"file":"test-constraint-amb-01.rkt","heartbeats":{"cell_allocs":48,"constraint_count":0,"constraint_retries":0,"elaborate_steps":15,"infer_steps":15,"meta_created":0,"meta_solved":0,"prop_allocs":0,"prop_firings":0,"reduce_steps":51,"resolution_cycles":0,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":0,"zonk_steps":18},"memory":{"gc_ms":47,"mem_after_bytes":138354144,"mem_before_bytes":138261832,"mem_retained_bytes":92312},"phases":{"elaborate_ms":9,"parse_ms":0,"qtt_ms":0,"reduce_ms":24,"trait_resolve_ms":0,"type_check_ms":5,"zonk_ms":0},"status":"pass","tests":10,"wall_ms":561},{"cell_metrics":{"cells":17,"propagators":0},"file":"test-confluence-01.rkt","heartbeats":{"cell_allocs":64,"constraint_count":0,"constraint_retries":0,"elaborate_steps":18,"infer_steps":18,"meta_created":0,"meta_solved":0,"prop_allocs":0,"prop_firings":0,"reduce_steps":38,"resolution_cycles":0,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":0,"zonk_steps":22},"memory":{"gc_ms":47,"mem_after_bytes":139602304,"mem_before_bytes":139623920,"mem_retained_bytes":0},"phases":{"elaborate_ms":6,"parse_ms":0,"qtt_ms":0,"reduce_ms":18,"trait_resolve_ms":0,"type_check_ms":4,"zonk_ms":0},"status":"pass","tests":58,"wall_ms":895},{"file":"test-constraint-cell-01.rkt","status":"pass","tests":33,"wall_ms":202},{"cell_metrics":{"cells":19,"propagators":0},"file":"test-cond-01.rkt","heartbeats":{"cell_allocs":360,"constraint_count":0,"constraint_retries":0,"elaborate_steps":304,"infer_steps":315,"meta_created":22,"meta_solved":22,"prop_allocs":0,"prop_firings":0,"reduce_steps":407,"resolution_cycles":22,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":222,"zonk_steps":355},"memory":{"gc_ms":50,"mem_after_bytes":138972720,"mem_before_bytes":139000840,"mem_retained_bytes":0},"phases":{"elaborate_ms":70,"parse_ms":0,"qtt_ms":154,"reduce_ms":68,"trait_resolve_ms":0,"type_check_ms":225,"zonk_ms":0},"status":"pass","tests":7,"wall_ms":1606},{"cell_metrics":{"cells":14,"propagators":0},"file":"test-cfa-analysis-01.rkt","heartbeats":{"cell_allocs":0,"constraint_count":0,"constraint_retries":0,"elaborate_steps":0,"infer_steps":0,"meta_created":0,"meta_solved":0,"prop_allocs":0,"prop_firings":0,"reduce_steps":0,"resolution_cycles":0,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":0,"zonk_steps":0},"memory":{"gc_ms":59,"mem_after_bytes":159673464,"mem_before_bytes":159426824,"mem_retained_bytes":246640},"phases":{"elaborate_ms":0,"parse_ms":0,"qtt_ms":0,"reduce_ms":0,"trait_resolve_ms":0,"type_check_ms":0,"zonk_ms":0},"status":"pass","tests":14,"wall_ms":5114},{"cell_metrics":{"cells":17,"propagators":0},"file":"test-constraint-chain-01.rkt","heartbeats":{"cell_allocs":64,"constraint_count":0,"constraint_retries":0,"elaborate_steps":22,"infer_steps":22,"meta_created":0,"meta_solved":0,"prop_allocs":0,"prop_firings":0,"reduce_steps":78,"resolution_cycles":0,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":0,"zonk_steps":26},"memory":{"gc_ms":51,"mem_after_bytes":140106088,"mem_before_bytes":140052680,"mem_retained_bytes":53408},"phases":{"elaborate_ms":5,"parse_ms":0,"qtt_ms":0,"reduce_ms":36,"trait_resolve_ms":0,"type_check_ms":5,"zonk_ms":0},"status":"pass","tests":25,"wall_ms":722},{"file":"test-constraint-retry-propagator.rkt","status":"pass","tests":16,"wall_ms":238},{"cell_metrics":{"cells":17,"propagators":0},"file":"test-constraint-propagators-01.rkt","heartbeats":{"cell_allocs":48,"constraint_count":0,"constraint_retries":0,"elaborate_steps":15,"infer_steps":15,"meta_created":0,"meta_solved":0,"prop_allocs":0,"prop_firings":0,"reduce_steps":51,"resolution_cycles":0,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":0,"zonk_steps":18},"memory":{"gc_ms":60,"mem_after_bytes":159809352,"mem_before_bytes":159812408,"mem_retained_bytes":0},"phases":{"elaborate_ms":4,"parse_ms":0,"qtt_ms":0,"reduce_ms":25,"trait_resolve_ms":0,"type_check_ms":3,"zonk_ms":0},"status":"pass","tests":21,"wall_ms":731},{"cell_metrics":{"cells":17,"propagators":0},"file":"test-collection-traits-02.rkt","heartbeats":{"cell_allocs":496,"constraint_count":0,"constraint_retries":0,"elaborate_steps":213,"infer_steps":348,"meta_created":0,"meta_solved":0,"prop_allocs":0,"prop_firings":0,"reduce_steps":504,"resolution_cycles":0,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":85,"zonk_steps":1002},"memory":{"gc_ms":49,"mem_after_bytes":136579096,"mem_before_bytes":136571096,"mem_retained_bytes":8000},"phases":{"elaborate_ms":53,"parse_ms":0,"qtt_ms":0,"reduce_ms":762,"trait_resolve_ms":0,"type_check_ms":319,"zonk_ms":0},"status":"pass","tests":16,"wall_ms":3221},{"file":"test-cross-domain-propagator.rkt","status":"pass","tests":8,"wall_ms":62},{"cell_metrics":{"cells":25,"propagators":0},"file":"test-cfa-analysis-02.rkt","heartbeats":{"cell_allocs":72,"constraint_count":0,"constraint_retries":0,"elaborate_steps":75,"infer_steps":33,"meta_created":0,"meta_solved":0,"prop_allocs":0,"prop_firings":0,"reduce_steps":21,"resolution_cycles":0,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":36,"zonk_steps":78},"memory":{"gc_ms":61,"mem_after_bytes":157777192,"mem_before_bytes":157718280,"mem_retained_bytes":58912},"phases":{"elaborate_ms":20,"parse_ms":0,"qtt_ms":23,"reduce_ms":0,"trait_resolve_ms":0,"type_check_ms":29,"zonk_ms":0},"status":"pass","tests":9,"wall_ms":5590},{"cell_metrics":{"cells":23,"propagators":3},"file":"test-constraint-inference.rkt","heartbeats":{"cell_allocs":293,"constraint_count":0,"constraint_retries":0,"elaborate_steps":107,"infer_steps":97,"meta_created":6,"meta_solved":5,"prop_allocs":0,"prop_firings":0,"reduce_steps":196,"resolution_cycles":6,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":51,"zonk_steps":105},"memory":{"gc_ms":52,"mem_after_bytes":139304432,"mem_before_bytes":139354120,"mem_retained_bytes":0},"phases":{"elaborate_ms":42,"parse_ms":0,"qtt_ms":78,"reduce_ms":100,"trait_resolve_ms":0,"type_check_ms":97,"zonk_ms":0},"status":"pass","tests":11,"wall_ms":1655},{"cell_metrics":{"cells":17,"propagators":0},"file":"test-cross-family-conversions-01.rkt","heartbeats":{"cell_allocs":64,"constraint_count":0,"constraint_retries":0,"elaborate_steps":8,"infer_steps":8,"meta_created":0,"meta_solved":0,"prop_allocs":0,"prop_firings":0,"reduce_steps":12,"resolution_cycles":0,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":0,"zonk_steps":12},"memory":{"gc_ms":47,"mem_after_bytes":137602120,"mem_before_bytes":137602024,"mem_retained_bytes":96},"phases":{"elaborate_ms":0,"parse_ms":0,"qtt_ms":0,"reduce_ms":4,"trait_resolve_ms":0,"type_check_ms":4,"zonk_ms":0},"status":"pass","tests":16,"wall_ms":608},{"file":"test-ctor-registry.rkt","status":"pass","tests":40,"wall_ms":300},{"cell_metrics":{"cells":17,"propagators":0},"file":"test-constraint-postponement.rkt","heartbeats":{"cell_allocs":178,"constraint_count":0,"constraint_retries":0,"elaborate_steps":48,"infer_steps":144,"meta_created":17,"meta_solved":17,"prop_allocs":0,"prop_firings":0,"reduce_steps":517,"resolution_cycles":17,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":51,"zonk_steps":160},"memory":{"gc_ms":51,"mem_after_bytes":139406808,"mem_before_bytes":139408584,"mem_retained_bytes":0},"phases":{"elaborate_ms":96,"parse_ms":0,"qtt_ms":0,"reduce_ms":611,"trait_resolve_ms":0,"type_check_ms":227,"zonk_ms":0},"status":"pass","tests":21,"wall_ms":2450},{"cell_metrics":{"cells":17,"propagators":0},"file":"test-decimal-literal.rkt","heartbeats":{"cell_allocs":144,"constraint_count":0,"constraint_retries":0,"elaborate_steps":12,"infer_steps":11,"meta_created":0,"meta_solved":0,"prop_allocs":0,"prop_firings":0,"reduce_steps":13,"resolution_cycles":0,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":0,"zonk_steps":16},"memory":{"gc_ms":48,"mem_after_bytes":137963800,"mem_before_bytes":137964488,"mem_retained_bytes":0},"phases":{"elaborate_ms":6,"parse_ms":0,"qtt_ms":0,"reduce_ms":9,"trait_resolve_ms":0,"type_check_ms":2,"zonk_ms":0},"status":"pass","tests":17,"wall_ms":1189},{"file":"test-defmacro.rkt","status":"pass","tests":53,"wall_ms":328},{"file":"test-dot-access-01.rkt","status":"pass","tests":14,"wall_ms":130},{"file":"test-effect-bridge-01.rkt","status":"pass","tests":18,"wall_ms":181},{"cell_metrics":{"cells":22,"propagators":0},"file":"test-core-prelude.rkt","heartbeats":{"cell_allocs":364,"constraint_count":0,"constraint_retries":0,"elaborate_steps":102,"infer_steps":185,"meta_created":3,"meta_solved":3,"prop_allocs":0,"prop_firings":0,"reduce_steps":294,"resolution_cycles":3,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":58,"zonk_steps":152},"memory":{"gc_ms":55,"mem_after_bytes":140758864,"mem_before_bytes":140762408,"mem_retained_bytes":0},"phases":{"elaborate_ms":32,"parse_ms":0,"qtt_ms":5,"reduce_ms":203,"trait_resolve_ms":0,"type_check_ms":215,"zonk_ms":0},"status":"pass","tests":11,"wall_ms":2593},{"file":"test-effect-executor-01.rkt","status":"pass","tests":19,"wall_ms":211},{"file":"test-effect-collection-01.rkt","status":"pass","tests":19,"wall_ms":262},{"file":"test-effect-ordering-01.rkt","status":"pass","tests":30,"wall_ms":263},{"cell_metrics":{"cells":17,"propagators":0},"file":"test-cross-family-conversions-03.rkt","heartbeats":{"cell_allocs":208,"constraint_count":0,"constraint_retries":0,"elaborate_steps":50,"infer_steps":104,"meta_created":0,"meta_solved":0,"prop_allocs":0,"prop_firings":0,"reduce_steps":207,"resolution_cycles":0,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":24,"zonk_steps":100},"memory":{"gc_ms":58,"mem_after_bytes":158594008,"mem_before_bytes":158598696,"mem_retained_bytes":0},"phases":{"elaborate_ms":13,"parse_ms":0,"qtt_ms":0,"reduce_ms":100,"trait_resolve_ms":0,"type_check_ms":127,"zonk_ms":0},"status":"pass","tests":17,"wall_ms":2345},{"file":"test-effect-position-01.rkt","status":"pass","tests":54,"wall_ms":348},{"file":"test-elaborator-network.rkt","status":"pass","tests":22,"wall_ms":220},{"cell_metrics":{"cells":17,"propagators":0},"file":"test-cross-family-conversions-02.rkt","heartbeats":{"cell_allocs":240,"constraint_count":0,"constraint_retries":0,"elaborate_steps":71,"infer_steps":164,"meta_created":0,"meta_solved":0,"prop_allocs":0,"prop_firings":0,"reduce_steps":326,"resolution_cycles":0,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":41,"zonk_steps":138},"memory":{"gc_ms":61,"mem_after_bytes":160270080,"mem_before_bytes":160262216,"mem_retained_bytes":7864},"phases":{"elaborate_ms":24,"parse_ms":0,"qtt_ms":0,"reduce_ms":189,"trait_resolve_ms":0,"type_check_ms":222,"zonk_ms":0},"status":"pass","tests":15,"wall_ms":2830},{"file":"test-elab-speculation.rkt","status":"pass","tests":18,"wall_ms":328},{"file":"test-elaborator.rkt","status":"pass","tests":40,"wall_ms":382},{"cell_metrics":{"cells":23,"propagators":0},"file":"test-char-string-01.rkt","heartbeats":{"cell_allocs":641,"constraint_count":0,"constraint_retries":0,"elaborate_steps":47,"infer_steps":32,"meta_created":0,"meta_solved":0,"prop_allocs":0,"prop_firings":0,"reduce_steps":54,"resolution_cycles":0,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":0,"zonk_steps":56},"memory":{"gc_ms":56,"mem_after_bytes":154580288,"mem_before_bytes":154567096,"mem_retained_bytes":13192},"phases":{"elaborate_ms":14,"parse_ms":0,"qtt_ms":0,"reduce_ms":18,"trait_resolve_ms":0,"type_check_ms":9,"zonk_ms":0},"status":"pass","tests":19,"wall_ms":8643},{"file":"test-eliminator-typing.rkt","status":"pass","tests":26,"wall_ms":1091},{"cell_metrics":{"cells":17,"propagators":0},"file":"test-char-string-02.rkt","heartbeats":{"cell_allocs":304,"constraint_count":0,"constraint_retries":0,"elaborate_steps":37,"infer_steps":55,"meta_created":0,"meta_solved":0,"prop_allocs":0,"prop_firings":0,"reduce_steps":129,"resolution_cycles":0,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":0,"zonk_steps":91},"memory":{"gc_ms":60,"mem_after_bytes":154510216,"mem_before_bytes":154466168,"mem_retained_bytes":44048},"phases":{"elaborate_ms":10,"parse_ms":0,"qtt_ms":0,"reduce_ms":62,"trait_resolve_ms":0,"type_check_ms":34,"zonk_ms":0},"status":"pass","tests":19,"wall_ms":8930},{"file":"test-errors.rkt","status":"pass","tests":13,"wall_ms":106},{"cell_metrics":{"cells":64,"propagators":0},"file":"test-definitional-tree-01.rkt","heartbeats":{"cell_allocs":945,"constraint_count":0,"constraint_retries":0,"elaborate_steps":278,"infer_steps":237,"meta_created":5,"meta_solved":4,"prop_allocs":0,"prop_firings":0,"reduce_steps":79,"resolution_cycles":4,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":61,"zonk_steps":283},"memory":{"gc_ms":51,"mem_after_bytes":141085944,"mem_before_bytes":141077632,"mem_retained_bytes":8312},"phases":{"elaborate_ms":103,"parse_ms":0,"qtt_ms":1,"reduce_ms":0,"trait_resolve_ms":0,"type_check_ms":103,"zonk_ms":0},"status":"pass","tests":39,"wall_ms":3464},{"file":"test-explain-provenance-01.rkt","status":"pass","tests":16,"wall_ms":281},{"cell_metrics":{"cells":31,"propagators":3},"file":"test-collection-fns-01.rkt","heartbeats":{"cell_allocs":615,"constraint_count":0,"constraint_retries":0,"elaborate_steps":189,"infer_steps":490,"meta_created":83,"meta_solved":83,"prop_allocs":0,"prop_firings":0,"reduce_steps":1641,"resolution_cycles":78,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":175,"zonk_steps":569},"memory":{"gc_ms":99,"mem_after_bytes":139147472,"mem_before_bytes":139141056,"mem_retained_bytes":6416},"phases":{"elaborate_ms":531,"parse_ms":0,"qtt_ms":13,"reduce_ms":6402,"trait_resolve_ms":0,"type_check_ms":928,"zonk_ms":0},"status":"pass","tests":14,"wall_ms":9601},{"cell_metrics":{"cells":20,"propagators":0},"file":"test-error-messages.rkt","heartbeats":{"cell_allocs":141,"constraint_count":0,"constraint_retries":0,"elaborate_steps":32,"infer_steps":46,"meta_created":2,"meta_solved":2,"prop_allocs":0,"prop_firings":0,"reduce_steps":68,"resolution_cycles":2,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":12,"zonk_steps":28},"memory":{"gc_ms":63,"mem_after_bytes":157078792,"mem_before_bytes":157083272,"mem_retained_bytes":0},"phases":{"elaborate_ms":19,"parse_ms":0,"qtt_ms":1,"reduce_ms":82,"trait_resolve_ms":0,"type_check_ms":52,"zonk_ms":0},"status":"pass","tests":29,"wall_ms":2961},{"cell_metrics":{"cells":25,"propagators":3},"file":"test-collection-fns-02.rkt","heartbeats":{"cell_allocs":512,"constraint_count":0,"constraint_retries":0,"elaborate_steps":156,"infer_steps":491,"meta_created":91,"meta_solved":91,"prop_allocs":0,"prop_firings":0,"reduce_steps":1585,"resolution_cycles":89,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":153,"zonk_steps":580},"memory":{"gc_ms":57,"mem_after_bytes":138942152,"mem_before_bytes":138954392,"mem_retained_bytes":0},"phases":{"elaborate_ms":705,"parse_ms":0,"qtt_ms":2,"reduce_ms":6262,"trait_resolve_ms":0,"type_check_ms":1068,"zonk_ms":0},"status":"pass","tests":15,"wall_ms":10875},{"cell_metrics":{"cells":27,"propagators":0},"file":"test-foreign-block.rkt","heartbeats":{"cell_allocs":493,"constraint_count":0,"constraint_retries":0,"elaborate_steps":56,"infer_steps":52,"meta_created":0,"meta_solved":0,"prop_allocs":0,"prop_firings":0,"reduce_steps":70,"resolution_cycles":0,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":8,"zonk_steps":51},"memory":{"gc_ms":57,"mem_after_bytes":155975960,"mem_before_bytes":155964248,"mem_retained_bytes":11712},"phases":{"elaborate_ms":72,"parse_ms":0,"qtt_ms":0,"reduce_ms":24,"trait_resolve_ms":0,"type_check_ms":35,"zonk_ms":0},"status":"pass","tests":13,"wall_ms":2787},{"file":"test-functor-ws-01.rkt","status":"pass","tests":6,"wall_ms":114},{"cell_metrics":{"cells":17,"propagators":0},"file":"test-eq-ord-extended-01.rkt","heartbeats":{"cell_allocs":192,"constraint_count":0,"constraint_retries":0,"elaborate_steps":36,"infer_steps":84,"meta_created":0,"meta_solved":0,"prop_allocs":0,"prop_firings":0,"reduce_steps":206,"resolution_cycles":0,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":24,"zonk_steps":72},"memory":{"gc_ms":60,"mem_after_bytes":143157504,"mem_before_bytes":143109544,"mem_retained_bytes":47960},"phases":{"elaborate_ms":13,"parse_ms":0,"qtt_ms":0,"reduce_ms":355,"trait_resolve_ms":0,"type_check_ms":79,"zonk_ms":0},"status":"pass","tests":12,"wall_ms":5052},{"cell_metrics":{"cells":28,"propagators":0},"file":"test-eq-let-surface-01.rkt","heartbeats":{"cell_allocs":377,"constraint_count":0,"constraint_retries":0,"elaborate_steps":133,"infer_steps":189,"meta_created":20,"meta_solved":20,"prop_allocs":0,"prop_firings":0,"reduce_steps":856,"resolution_cycles":20,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":66,"zonk_steps":238},"memory":{"gc_ms":68,"mem_after_bytes":160636784,"mem_before_bytes":160604480,"mem_retained_bytes":32304},"phases":{"elaborate_ms":155,"parse_ms":0,"qtt_ms":161,"reduce_ms":1500,"trait_resolve_ms":0,"type_check_ms":242,"zonk_ms":0},"status":"pass","tests":13,"wall_ms":5598},{"file":"test-generators.rkt","status":"pass","tests":5,"wall_ms":608},{"cell_metrics":{"cells":50,"propagators":0},"file":"test-free-ordering.rkt","heartbeats":{"cell_allocs":1554,"constraint_count":0,"constraint_retries":0,"elaborate_steps":195,"infer_steps":150,"meta_created":0,"meta_solved":0,"prop_allocs":0,"prop_firings":0,"reduce_steps":187,"resolution_cycles":0,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":58,"zonk_steps":206},"memory":{"gc_ms":63,"mem_after_bytes":157298056,"mem_before_bytes":157303544,"mem_retained_bytes":0},"phases":{"elaborate_ms":130,"parse_ms":0,"qtt_ms":45,"reduce_ms":90,"trait_resolve_ms":0,"type_check_ms":162,"zonk_ms":0},"status":"pass","tests":11,"wall_ms":2672},{"cell_metrics":{"cells":17,"propagators":0},"file":"test-eq-ord-extended-02.rkt","heartbeats":{"cell_allocs":266,"constraint_count":0,"constraint_retries":0,"elaborate_steps":106,"infer_steps":240,"meta_created":10,"meta_solved":10,"prop_allocs":0,"prop_firings":0,"reduce_steps":682,"resolution_cycles":10,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":80,"zonk_steps":290},"memory":{"gc_ms":58,"mem_after_bytes":141269984,"mem_before_bytes":141293696,"mem_retained_bytes":0},"phases":{"elaborate_ms":118,"parse_ms":0,"qtt_ms":0,"reduce_ms":1661,"trait_resolve_ms":0,"type_check_ms":676,"zonk_ms":0},"status":"pass","tests":12,"wall_ms":6866},{"cell_metrics":{"cells":19,"propagators":0},"file":"test-foreign.rkt","heartbeats":{"cell_allocs":558,"constraint_count":0,"constraint_retries":0,"elaborate_steps":143,"infer_steps":114,"meta_created":0,"meta_solved":0,"prop_allocs":0,"prop_firings":0,"reduce_steps":232,"resolution_cycles":0,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":11,"zonk_steps":134},"memory":{"gc_ms":57,"mem_after_bytes":139600800,"mem_before_bytes":139605264,"mem_retained_bytes":0},"phases":{"elaborate_ms":71,"parse_ms":0,"qtt_ms":14,"reduce_ms":132,"trait_resolve_ms":0,"type_check_ms":98,"zonk_ms":0},"status":"pass","tests":38,"wall_ms":5603},{"file":"test-gde-errors.rkt","status":"pass","tests":24,"wall_ms":3295},{"cell_metrics":{"cells":19,"propagators":0},"file":"test-galois-connection.rkt","heartbeats":{"cell_allocs":274,"constraint_count":0,"constraint_retries":0,"elaborate_steps":55,"infer_steps":203,"meta_created":34,"meta_solved":34,"prop_allocs":0,"prop_firings":0,"reduce_steps":563,"resolution_cycles":34,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":108,"zonk_steps":280},"memory":{"gc_ms":57,"mem_after_bytes":139242160,"mem_before_bytes":139265432,"mem_retained_bytes":0},"phases":{"elaborate_ms":304,"parse_ms":0,"qtt_ms":0,"reduce_ms":535,"trait_resolve_ms":0,"type_check_ms":790,"zonk_ms":0},"status":"pass","tests":14,"wall_ms":4358},{"cell_metrics":{"cells":27,"propagators":0},"file":"test-dot-access-02.rkt","heartbeats":{"cell_allocs":386,"constraint_count":0,"constraint_retries":0,"elaborate_steps":85,"infer_steps":77,"meta_created":18,"meta_solved":18,"prop_allocs":0,"prop_firings":0,"reduce_steps":172,"resolution_cycles":18,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":23,"zonk_steps":143},"memory":{"gc_ms":75,"mem_after_bytes":158565056,"mem_before_bytes":158512520,"mem_retained_bytes":52536},"phases":{"elaborate_ms":45,"parse_ms":0,"qtt_ms":18,"reduce_ms":103,"trait_resolve_ms":0,"type_check_ms":89,"zonk_ms":0},"status":"pass","tests":7,"wall_ms":9627},{"cell_metrics":{"cells":17,"propagators":0},"file":"test-first-rest-01.rkt","heartbeats":{"cell_allocs":357,"constraint_count":0,"constraint_retries":0,"elaborate_steps":103,"infer_steps":318,"meta_created":62,"meta_solved":62,"prop_allocs":0,"prop_firings":0,"reduce_steps":900,"resolution_cycles":58,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":100,"zonk_steps":418},"memory":{"gc_ms":57,"mem_after_bytes":141577464,"mem_before_bytes":141592760,"mem_retained_bytes":0},"phases":{"elaborate_ms":535,"parse_ms":0,"qtt_ms":5,"reduce_ms":2412,"trait_resolve_ms":0,"type_check_ms":1058,"zonk_ms":0},"status":"pass","tests":15,"wall_ms":7510},{"cell_metrics":{"cells":17,"propagators":0},"file":"test-generic-arith-02.rkt","heartbeats":{"cell_allocs":184,"constraint_count":0,"constraint_retries":0,"elaborate_steps":34,"infer_steps":94,"meta_created":8,"meta_solved":8,"prop_allocs":0,"prop_firings":0,"reduce_steps":379,"resolution_cycles":8,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":38,"zonk_steps":156},"memory":{"gc_ms":63,"mem_after_bytes":157892912,"mem_before_bytes":157894208,"mem_retained_bytes":0},"phases":{"elaborate_ms":59,"parse_ms":0,"qtt_ms":0,"reduce_ms":520,"trait_resolve_ms":0,"type_check_ms":258,"zonk_ms":0},"status":"pass","tests":11,"wall_ms":3165},{"cell_metrics":{"cells":17,"propagators":0},"file":"test-generic-from.rkt","heartbeats":{"cell_allocs":192,"constraint_count":0,"constraint_retries":0,"elaborate_steps":36,"infer_steps":36,"meta_created":0,"meta_solved":0,"prop_allocs":0,"prop_firings":0,"reduce_steps":28,"resolution_cycles":0,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":0,"zonk_steps":39},"memory":{"gc_ms":52,"mem_after_bytes":139837656,"mem_before_bytes":139839112,"mem_retained_bytes":0},"phases":{"elaborate_ms":9,"parse_ms":0,"qtt_ms":0,"reduce_ms":11,"trait_resolve_ms":0,"type_check_ms":15,"zonk_ms":0},"status":"pass","tests":12,"wall_ms":1654},{"cell_metrics":{"cells":17,"propagators":0},"file":"test-generic-arith-01.rkt","heartbeats":{"cell_allocs":528,"constraint_count":0,"constraint_retries":0,"elaborate_steps":115,"infer_steps":95,"meta_created":0,"meta_solved":0,"prop_allocs":0,"prop_firings":0,"reduce_steps":65,"resolution_cycles":0,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":0,"zonk_steps":112},"memory":{"gc_ms":64,"mem_after_bytes":164725016,"mem_before_bytes":164727568,"mem_retained_bytes":0},"phases":{"elaborate_ms":26,"parse_ms":0,"qtt_ms":0,"reduce_ms":53,"trait_resolve_ms":0,"type_check_ms":40,"zonk_ms":0},"status":"pass","tests":33,"wall_ms":5804},{"cell_metrics":{"cells":19,"propagators":0},"file":"test-guards-01.rkt","heartbeats":{"cell_allocs":418,"constraint_count":0,"constraint_retries":0,"elaborate_steps":312,"infer_steps":302,"meta_created":14,"meta_solved":14,"prop_allocs":0,"prop_firings":0,"reduce_steps":425,"resolution_cycles":14,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":204,"zonk_steps":362},"memory":{"gc_ms":50,"mem_after_bytes":140100784,"mem_before_bytes":140062552,"mem_retained_bytes":38232},"phases":{"elaborate_ms":99,"parse_ms":0,"qtt_ms":204,"reduce_ms":115,"trait_resolve_ms":0,"type_check_ms":255,"zonk_ms":0},"status":"pass","tests":9,"wall_ms":2169},{"cell_metrics":{"cells":29,"propagators":0},"file":"test-extended-spec.rkt","heartbeats":{"cell_allocs":264,"constraint_count":0,"constraint_retries":0,"elaborate_steps":200,"infer_steps":98,"meta_created":0,"meta_solved":0,"prop_allocs":0,"prop_firings":0,"reduce_steps":75,"resolution_cycles":0,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":64,"zonk_steps":181},"memory":{"gc_ms":61,"mem_after_bytes":163031704,"mem_before_bytes":163035664,"mem_retained_bytes":0},"phases":{"elaborate_ms":65,"parse_ms":0,"qtt_ms":61,"reduce_ms":18,"trait_resolve_ms":0,"type_check_ms":84,"zonk_ms":0},"status":"pass","tests":78,"wall_ms":11698},{"cell_metrics":{"cells":38,"propagators":3},"file":"test-generic-ops-01-02.rkt","heartbeats":{"cell_allocs":516,"constraint_count":0,"constraint_retries":0,"elaborate_steps":656,"infer_steps":388,"meta_created":35,"meta_solved":35,"prop_allocs":0,"prop_firings":0,"reduce_steps":939,"resolution_cycles":35,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":374,"zonk_steps":959},"memory":{"gc_ms":56,"mem_after_bytes":139484736,"mem_before_bytes":139483616,"mem_retained_bytes":1120},"phases":{"elaborate_ms":372,"parse_ms":0,"qtt_ms":460,"reduce_ms":1210,"trait_resolve_ms":0,"type_check_ms":1529,"zonk_ms":0},"status":"pass","tests":5,"wall_ms":4508},{"cell_metrics":{"cells":42,"propagators":6},"file":"test-generic-ops-01-01.rkt","heartbeats":{"cell_allocs":639,"constraint_count":0,"constraint_retries":0,"elaborate_steps":675,"infer_steps":379,"meta_created":35,"meta_solved":35,"prop_allocs":0,"prop_firings":0,"reduce_steps":973,"resolution_cycles":31,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":380,"zonk_steps":972},"memory":{"gc_ms":61,"mem_after_bytes":143774624,"mem_before_bytes":143752488,"mem_retained_bytes":22136},"phases":{"elaborate_ms":524,"parse_ms":0,"qtt_ms":520,"reduce_ms":1198,"trait_resolve_ms":0,"type_check_ms":1626,"zonk_ms":0},"status":"pass","tests":4,"wall_ms":4783},{"cell_metrics":{"cells":33,"propagators":0},"file":"test-generic-ops-02-01.rkt","heartbeats":{"cell_allocs":482,"constraint_count":0,"constraint_retries":0,"elaborate_steps":653,"infer_steps":372,"meta_created":32,"meta_solved":32,"prop_allocs":0,"prop_firings":0,"reduce_steps":896,"resolution_cycles":29,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":365,"zonk_steps":949},"memory":{"gc_ms":59,"mem_after_bytes":158430968,"mem_before_bytes":158429768,"mem_retained_bytes":1200},"phases":{"elaborate_ms":447,"parse_ms":0,"qtt_ms":476,"reduce_ms":1233,"trait_resolve_ms":0,"type_check_ms":1554,"zonk_ms":0},"status":"pass","tests":4,"wall_ms":4632},{"cell_metrics":{"cells":26,"propagators":6},"file":"test-hasmethod-01.rkt","heartbeats":{"cell_allocs":108,"constraint_count":4,"constraint_retries":2,"elaborate_steps":92,"infer_steps":60,"meta_created":6,"meta_solved":6,"prop_allocs":0,"prop_firings":0,"reduce_steps":244,"resolution_cycles":4,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":46,"zonk_steps":136},"memory":{"gc_ms":69,"mem_after_bytes":163347488,"mem_before_bytes":163361352,"mem_retained_bytes":0},"phases":{"elaborate_ms":52,"parse_ms":0,"qtt_ms":28,"reduce_ms":176,"trait_resolve_ms":0,"type_check_ms":87,"zonk_ms":0},"status":"pass","tests":10,"wall_ms":1243},{"cell_metrics":{"cells":29,"propagators":0},"file":"test-higher-rank.rkt","heartbeats":{"cell_allocs":555,"constraint_count":0,"constraint_retries":0,"elaborate_steps":249,"infer_steps":189,"meta_created":1,"meta_solved":0,"prop_allocs":0,"prop_firings":0,"reduce_steps":321,"resolution_cycles":0,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":126,"zonk_steps":297},"memory":{"gc_ms":50,"mem_after_bytes":139884928,"mem_before_bytes":139873448,"mem_retained_bytes":11480},"phases":{"elaborate_ms":70,"parse_ms":0,"qtt_ms":53,"reduce_ms":108,"trait_resolve_ms":0,"type_check_ms":162,"zonk_ms":0},"status":"pass","tests":19,"wall_ms":1919},{"cell_metrics":{"cells":18,"propagators":0},"file":"test-hkt-kind.rkt","heartbeats":{"cell_allocs":66,"constraint_count":0,"constraint_retries":0,"elaborate_steps":28,"infer_steps":52,"meta_created":2,"meta_solved":2,"prop_allocs":0,"prop_firings":0,"reduce_steps":182,"resolution_cycles":2,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":14,"zonk_steps":48},"memory":{"gc_ms":70,"mem_after_bytes":163763104,"mem_before_bytes":163785528,"mem_retained_bytes":0},"phases":{"elaborate_ms":11,"parse_ms":0,"qtt_ms":0,"reduce_ms":163,"trait_resolve_ms":0,"type_check_ms":49,"zonk_ms":0},"status":"pass","tests":22,"wall_ms":955},{"cell_metrics":{"cells":14,"propagators":0},"file":"test-global-constraints-01.rkt","heartbeats":{"cell_allocs":0,"constraint_count":0,"constraint_retries":0,"elaborate_steps":0,"infer_steps":0,"meta_created":0,"meta_solved":0,"prop_allocs":0,"prop_firings":0,"reduce_steps":0,"resolution_cycles":0,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":0,"zonk_steps":0},"memory":{"gc_ms":73,"mem_after_bytes":176512232,"mem_before_bytes":176253576,"mem_retained_bytes":258656},"phases":{"elaborate_ms":0,"parse_ms":0,"qtt_ms":0,"reduce_ms":0,"trait_resolve_ms":0,"type_check_ms":0,"zonk_ms":0},"status":"pass","tests":49,"wall_ms":5450},{"file":"test-implicit-map-01.rkt","status":"pass","tests":11,"wall_ms":61},{"cell_metrics":{"cells":62,"propagators":3},"file":"test-hkt-errors.rkt","heartbeats":{"cell_allocs":1464,"constraint_count":1,"constraint_retries":0,"elaborate_steps":269,"infer_steps":254,"meta_created":19,"meta_solved":10,"prop_allocs":0,"prop_firings":0,"reduce_steps":369,"resolution_cycles":16,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":161,"zonk_steps":332},"memory":{"gc_ms":56,"mem_after_bytes":144095840,"mem_before_bytes":144054568,"mem_retained_bytes":41272},"phases":{"elaborate_ms":133,"parse_ms":0,"qtt_ms":136,"reduce_ms":191,"trait_resolve_ms":0,"type_check_ms":256,"zonk_ms":0},"status":"pass","tests":9,"wall_ms":2023},{"cell_metrics":{"cells":17,"propagators":0},"file":"test-hashable-01.rkt","heartbeats":{"cell_allocs":176,"constraint_count":0,"constraint_retries":0,"elaborate_steps":28,"infer_steps":38,"meta_created":0,"meta_solved":0,"prop_allocs":0,"prop_firings":0,"reduce_steps":689,"resolution_cycles":0,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":5,"zonk_steps":45},"memory":{"gc_ms":63,"mem_after_bytes":164824608,"mem_before_bytes":164825440,"mem_retained_bytes":0},"phases":{"elaborate_ms":5,"parse_ms":0,"qtt_ms":0,"reduce_ms":1613,"trait_resolve_ms":0,"type_check_ms":16,"zonk_ms":0},"status":"pass","tests":11,"wall_ms":3291},{"file":"test-inductive.rkt","status":"pass","tests":15,"wall_ms":132},{"file":"test-infra-cell-atms-01.rkt","status":"pass","tests":21,"wall_ms":137},{"file":"test-infra-cell-constraint-01.rkt","status":"pass","tests":19,"wall_ms":3},{"file":"test-infra-cell-01.rkt","status":"pass","tests":37,"wall_ms":210},{"file":"test-infra-cell-registration-01.rkt","status":"pass","tests":6,"wall_ms":102},{"file":"test-infra-cell-parallel-01.rkt","status":"pass","tests":6,"wall_ms":145},{"cell_metrics":{"cells":19,"propagators":0},"file":"test-hkt-impl.rkt","heartbeats":{"cell_allocs":244,"constraint_count":0,"constraint_retries":0,"elaborate_steps":54,"infer_steps":94,"meta_created":1,"meta_solved":1,"prop_allocs":0,"prop_firings":0,"reduce_steps":177,"resolution_cycles":1,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":26,"zonk_steps":92},"memory":{"gc_ms":69,"mem_after_bytes":158758800,"mem_before_bytes":158767584,"mem_retained_bytes":0},"phases":{"elaborate_ms":11,"parse_ms":0,"qtt_ms":0,"reduce_ms":309,"trait_resolve_ms":0,"type_check_ms":76,"zonk_ms":0},"status":"pass","tests":20,"wall_ms":2629},{"file":"test-integration.rkt","status":"pass","tests":33,"wall_ms":440},{"cell_metrics":{"cells":42,"propagators":3},"file":"test-generic-ops-02-02.rkt","heartbeats":{"cell_allocs":772,"constraint_count":0,"constraint_retries":0,"elaborate_steps":709,"infer_steps":578,"meta_created":70,"meta_solved":70,"prop_allocs":0,"prop_firings":0,"reduce_steps":1604,"resolution_cycles":67,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":435,"zonk_steps":1199},"memory":{"gc_ms":71,"mem_after_bytes":141832936,"mem_before_bytes":141837048,"mem_retained_bytes":0},"phases":{"elaborate_ms":595,"parse_ms":0,"qtt_ms":507,"reduce_ms":3322,"trait_resolve_ms":0,"type_check_ms":1844,"zonk_ms":0},"status":"pass","tests":10,"wall_ms":7832},{"cell_metrics":{"cells":23,"propagators":0},"file":"test-generic-arith-03.rkt","heartbeats":{"cell_allocs":500,"constraint_count":0,"constraint_retries":0,"elaborate_steps":133,"infer_steps":123,"meta_created":0,"meta_solved":0,"prop_allocs":0,"prop_firings":0,"reduce_steps":84,"resolution_cycles":0,"solver_backtracks":3,"solver_unifies":15,"trait_resolve_steps":0,"unify_steps":0,"zonk_steps":139},"memory":{"gc_ms":61,"mem_after_bytes":159464456,"mem_before_bytes":159480416,"mem_retained_bytes":0},"phases":{"elaborate_ms":31,"parse_ms":0,"qtt_ms":0,"reduce_ms":42,"trait_resolve_ms":0,"type_check_ms":33,"zonk_ms":0},"status":"pass","tests":27,"wall_ms":9898},{"file":"test-io-boundary-01.rkt","status":"pass","tests":11,"wall_ms":152},{"file":"test-io-bridge-01.rkt","status":"pass","tests":15,"wall_ms":161},{"cell_metrics":{"cells":22,"propagators":0},"file":"test-implicit-inference.rkt","heartbeats":{"cell_allocs":267,"constraint_count":0,"constraint_retries":0,"elaborate_steps":101,"infer_steps":199,"meta_created":8,"meta_solved":8,"prop_allocs":0,"prop_firings":0,"reduce_steps":356,"resolution_cycles":8,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":57,"zonk_steps":184},"memory":{"gc_ms":62,"mem_after_bytes":163938856,"mem_before_bytes":163954440,"mem_retained_bytes":0},"phases":{"elaborate_ms":43,"parse_ms":0,"qtt_ms":4,"reduce_ms":459,"trait_resolve_ms":0,"type_check_ms":231,"zonk_ms":0},"status":"pass","tests":12,"wall_ms":2551},{"cell_metrics":{"cells":14,"propagators":0},"file":"test-io-caps-01.rkt","heartbeats":{"cell_allocs":0,"constraint_count":0,"constraint_retries":0,"elaborate_steps":0,"infer_steps":0,"meta_created":0,"meta_solved":0,"prop_allocs":0,"prop_firings":0,"reduce_steps":0,"resolution_cycles":0,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":0,"zonk_steps":0},"memory":{"gc_ms":66,"mem_after_bytes":164384528,"mem_before_bytes":164214984,"mem_retained_bytes":169544},"phases":{"elaborate_ms":0,"parse_ms":0,"qtt_ms":0,"reduce_ms":0,"trait_resolve_ms":0,"type_check_ms":0,"zonk_ms":0},"status":"pass","tests":18,"wall_ms":279},{"file":"test-io-csv-01.rkt","status":"pass","tests":20,"wall_ms":107},{"cell_metrics":{"cells":18,"propagators":0},"file":"test-int.rkt","heartbeats":{"cell_allocs":325,"constraint_count":0,"constraint_retries":0,"elaborate_steps":50,"infer_steps":47,"meta_created":0,"meta_solved":0,"prop_allocs":0,"prop_firings":0,"reduce_steps":46,"resolution_cycles":0,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":3,"zonk_steps":61},"memory":{"gc_ms":53,"mem_after_bytes":147027992,"mem_before_bytes":147028912,"mem_retained_bytes":0},"phases":{"elaborate_ms":6,"parse_ms":0,"qtt_ms":0,"reduce_ms":16,"trait_resolve_ms":0,"type_check_ms":13,"zonk_ms":0},"status":"pass","tests":29,"wall_ms":2506},{"cell_metrics":{"cells":17,"propagators":0},"file":"test-introspection.rkt","heartbeats":{"cell_allocs":176,"constraint_count":0,"constraint_retries":0,"elaborate_steps":2,"infer_steps":0,"meta_created":0,"meta_solved":0,"prop_allocs":0,"prop_firings":0,"reduce_steps":0,"resolution_cycles":0,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":0,"zonk_steps":1},"memory":{"gc_ms":50,"mem_after_bytes":142744560,"mem_before_bytes":142745336,"mem_retained_bytes":0},"phases":{"elaborate_ms":0,"parse_ms":0,"qtt_ms":0,"reduce_ms":0,"trait_resolve_ms":0,"type_check_ms":0,"zonk_ms":0},"status":"pass","tests":62,"wall_ms":1686},{"cell_metrics":{"cells":19,"propagators":0},"file":"test-io-dep-cap-01.rkt","heartbeats":{"cell_allocs":36,"constraint_count":0,"constraint_retries":0,"elaborate_steps":1,"infer_steps":0,"meta_created":0,"meta_solved":0,"prop_allocs":0,"prop_firings":0,"reduce_steps":0,"resolution_cycles":0,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":0,"zonk_steps":0},"memory":{"gc_ms":55,"mem_after_bytes":147761848,"mem_before_bytes":147490096,"mem_retained_bytes":271752},"phases":{"elaborate_ms":0,"parse_ms":0,"qtt_ms":0,"reduce_ms":0,"trait_resolve_ms":0,"type_check_ms":0,"zonk_ms":0},"status":"pass","tests":27,"wall_ms":345},{"cell_metrics":{"cells":71,"propagators":0},"file":"test-functor-ws-02.rkt","heartbeats":{"cell_allocs":3306,"constraint_count":0,"constraint_retries":0,"elaborate_steps":4230,"infer_steps":384,"meta_created":0,"meta_solved":0,"prop_allocs":0,"prop_firings":0,"reduce_steps":1707,"resolution_cycles":0,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":1110,"zonk_steps":4953},"memory":{"gc_ms":183,"mem_after_bytes":156439360,"mem_before_bytes":156533640,"mem_retained_bytes":0},"phases":{"elaborate_ms":1331,"parse_ms":0,"qtt_ms":2105,"reduce_ms":0,"trait_resolve_ms":0,"type_check_ms":9130,"zonk_ms":3},"status":"pass","tests":5,"wall_ms":14945},{"cell_metrics":{"cells":22,"propagators":0},"file":"test-io-dep-session-01.rkt","heartbeats":{"cell_allocs":95,"constraint_count":0,"constraint_retries":0,"elaborate_steps":9,"infer_steps":0,"meta_created":0,"meta_solved":0,"prop_allocs":0,"prop_firings":0,"reduce_steps":0,"resolution_cycles":0,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":0,"zonk_steps":0},"memory":{"gc_ms":56,"mem_after_bytes":147860864,"mem_before_bytes":147858848,"mem_retained_bytes":2016},"phases":{"elaborate_ms":2,"parse_ms":0,"qtt_ms":0,"reduce_ms":0,"trait_resolve_ms":0,"type_check_ms":0,"zonk_ms":0},"status":"pass","tests":14,"wall_ms":706},{"cell_metrics":{"cells":46,"propagators":0},"file":"test-io-cap-pipeline-01.rkt","heartbeats":{"cell_allocs":1907,"constraint_count":0,"constraint_retries":0,"elaborate_steps":143,"infer_steps":113,"meta_created":3,"meta_solved":2,"prop_allocs":0,"prop_firings":0,"reduce_steps":72,"resolution_cycles":2,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":92,"zonk_steps":154},"memory":{"gc_ms":62,"mem_after_bytes":161948312,"mem_before_bytes":160795832,"mem_retained_bytes":1152480},"phases":{"elaborate_ms":39,"parse_ms":0,"qtt_ms":26,"reduce_ms":0,"trait_resolve_ms":0,"type_check_ms":37,"zonk_ms":0},"status":"pass","tests":11,"wall_ms":1938},{"cell_metrics":{"cells":31,"propagators":0},"file":"test-io-dep-cap-02.rkt","heartbeats":{"cell_allocs":3079,"constraint_count":0,"constraint_retries":0,"elaborate_steps":78,"infer_steps":61,"meta_created":1,"meta_solved":1,"prop_allocs":0,"prop_firings":0,"reduce_steps":45,"resolution_cycles":1,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":41,"zonk_steps":93},"memory":{"gc_ms":56,"mem_after_bytes":143496592,"mem_before_bytes":143187480,"mem_retained_bytes":309112},"phases":{"elaborate_ms":21,"parse_ms":0,"qtt_ms":16,"reduce_ms":0,"trait_resolve_ms":0,"type_check_ms":23,"zonk_ms":0},"status":"pass","tests":7,"wall_ms":1058},{"cell_metrics":{"cells":19,"propagators":0},"file":"test-identity-generic-ops.rkt","heartbeats":{"cell_allocs":349,"constraint_count":0,"constraint_retries":0,"elaborate_steps":61,"infer_steps":146,"meta_created":7,"meta_solved":7,"prop_allocs":0,"prop_firings":0,"reduce_steps":484,"resolution_cycles":7,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":40,"zonk_steps":193},"memory":{"gc_ms":50,"mem_after_bytes":140215888,"mem_before_bytes":140225840,"mem_retained_bytes":0},"phases":{"elaborate_ms":29,"parse_ms":0,"qtt_ms":0,"reduce_ms":1476,"trait_resolve_ms":0,"type_check_ms":152,"zonk_ms":0},"status":"pass","tests":22,"wall_ms":4498},{"cell_metrics":{"cells":25,"propagators":0},"file":"test-io-dep-session-02.rkt","heartbeats":{"cell_allocs":164,"constraint_count":0,"constraint_retries":0,"elaborate_steps":13,"infer_steps":0,"meta_created":0,"meta_solved":0,"prop_allocs":0,"prop_firings":0,"reduce_steps":0,"resolution_cycles":0,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":0,"zonk_steps":0},"memory":{"gc_ms":56,"mem_after_bytes":156568400,"mem_before_bytes":156560960,"mem_retained_bytes":7440},"phases":{"elaborate_ms":2,"parse_ms":0,"qtt_ms":0,"reduce_ms":0,"trait_resolve_ms":0,"type_check_ms":0,"zonk_ms":0},"status":"pass","tests":8,"wall_ms":1065},{"cell_metrics":{"cells":28,"propagators":0},"file":"test-io-file-02.rkt","heartbeats":{"cell_allocs":379,"constraint_count":0,"constraint_retries":0,"elaborate_steps":35,"infer_steps":0,"meta_created":0,"meta_solved":0,"prop_allocs":0,"prop_firings":0,"reduce_steps":0,"resolution_cycles":0,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":0,"zonk_steps":0},"memory":{"gc_ms":60,"mem_after_bytes":161011648,"mem_before_bytes":161004528,"mem_retained_bytes":7120},"phases":{"elaborate_ms":12,"parse_ms":0,"qtt_ms":0,"reduce_ms":0,"trait_resolve_ms":0,"type_check_ms":0,"zonk_ms":0},"status":"pass","tests":8,"wall_ms":1187},{"cell_metrics":{"cells":17,"propagators":0},"file":"test-io-fs-01.rkt","heartbeats":{"cell_allocs":112,"constraint_count":0,"constraint_retries":0,"elaborate_steps":14,"infer_steps":21,"meta_created":0,"meta_solved":0,"prop_allocs":0,"prop_firings":0,"reduce_steps":63,"resolution_cycles":0,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":0,"zonk_steps":28},"memory":{"gc_ms":52,"mem_after_bytes":140316256,"mem_before_bytes":140314112,"mem_retained_bytes":2144},"phases":{"elaborate_ms":3,"parse_ms":0,"qtt_ms":0,"reduce_ms":17,"trait_resolve_ms":0,"type_check_ms":9,"zonk_ms":0},"status":"pass","tests":7,"wall_ms":984},{"file":"test-io-opaque-01.rkt","status":"pass","tests":13,"wall_ms":91},{"cell_metrics":{"cells":14,"propagators":0},"file":"test-io-session-01.rkt","heartbeats":{"cell_allocs":0,"constraint_count":0,"constraint_retries":0,"elaborate_steps":0,"infer_steps":0,"meta_created":0,"meta_solved":0,"prop_allocs":0,"prop_firings":0,"reduce_steps":0,"resolution_cycles":0,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":0,"zonk_steps":0},"memory":{"gc_ms":63,"mem_after_bytes":161709112,"mem_before_bytes":161690032,"mem_retained_bytes":19080},"phases":{"elaborate_ms":0,"parse_ms":0,"qtt_ms":0,"reduce_ms":0,"trait_resolve_ms":0,"type_check_ms":0,"zonk_ms":0},"status":"pass","tests":11,"wall_ms":263},{"file":"test-io-session-02.rkt","status":"pass","tests":10,"wall_ms":86},{"cell_metrics":{"cells":18,"propagators":0},"file":"test-io-file-01.rkt","heartbeats":{"cell_allocs":187,"constraint_count":0,"constraint_retries":0,"elaborate_steps":26,"infer_steps":64,"meta_created":11,"meta_solved":0,"prop_allocs":0,"prop_firings":0,"reduce_steps":167,"resolution_cycles":0,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":1,"zonk_steps":74},"memory":{"gc_ms":56,"mem_after_bytes":148213912,"mem_before_bytes":148216400,"mem_retained_bytes":0},"phases":{"elaborate_ms":18,"parse_ms":0,"qtt_ms":0,"reduce_ms":40,"trait_resolve_ms":0,"type_check_ms":37,"zonk_ms":0},"status":"pass","tests":12,"wall_ms":1722},{"cell_metrics":{"cells":14,"propagators":0},"file":"test-interval-domain-01.rkt","heartbeats":{"cell_allocs":0,"constraint_count":0,"constraint_retries":0,"elaborate_steps":0,"infer_steps":0,"meta_created":0,"meta_solved":0,"prop_allocs":0,"prop_firings":0,"reduce_steps":0,"resolution_cycles":0,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":0,"zonk_steps":0},"memory":{"gc_ms":68,"mem_after_bytes":177945864,"mem_before_bytes":177682160,"mem_retained_bytes":263704},"phases":{"elaborate_ms":0,"parse_ms":0,"qtt_ms":0,"reduce_ms":0,"trait_resolve_ms":0,"type_check_ms":0,"zonk_ms":0},"status":"pass","tests":43,"wall_ms":5437},{"cell_metrics":{"cells":19,"propagators":0},"file":"test-int-patterns-01.rkt","heartbeats":{"cell_allocs":347,"constraint_count":0,"constraint_retries":0,"elaborate_steps":235,"infer_steps":232,"meta_created":9,"meta_solved":9,"prop_allocs":0,"prop_firings":0,"reduce_steps":2168,"resolution_cycles":9,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":160,"zonk_steps":274},"memory":{"gc_ms":63,"mem_after_bytes":165949600,"mem_before_bytes":165961832,"mem_retained_bytes":0},"phases":{"elaborate_ms":73,"parse_ms":0,"qtt_ms":152,"reduce_ms":4355,"trait_resolve_ms":0,"type_check_ms":149,"zonk_ms":0},"status":"pass","tests":9,"wall_ms":6241},{"cell_metrics":{"cells":24,"propagators":0},"file":"test-io-session-03.rkt","heartbeats":{"cell_allocs":218,"constraint_count":0,"constraint_retries":0,"elaborate_steps":21,"infer_steps":0,"meta_created":0,"meta_solved":0,"prop_allocs":0,"prop_firings":0,"reduce_steps":0,"resolution_cycles":0,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":0,"zonk_steps":0},"memory":{"gc_ms":61,"mem_after_bytes":162023816,"mem_before_bytes":162023000,"mem_retained_bytes":816},"phases":{"elaborate_ms":13,"parse_ms":0,"qtt_ms":0,"reduce_ms":0,"trait_resolve_ms":0,"type_check_ms":0,"zonk_ms":0},"status":"pass","tests":6,"wall_ms":1098},{"cell_metrics":{"cells":32,"propagators":0},"file":"test-io-fio-01.rkt","heartbeats":{"cell_allocs":432,"constraint_count":0,"constraint_retries":0,"elaborate_steps":116,"infer_steps":173,"meta_created":5,"meta_solved":5,"prop_allocs":0,"prop_firings":0,"reduce_steps":543,"resolution_cycles":5,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":62,"zonk_steps":184},"memory":{"gc_ms":53,"mem_after_bytes":143320368,"mem_before_bytes":143295728,"mem_retained_bytes":24640},"phases":{"elaborate_ms":62,"parse_ms":0,"qtt_ms":21,"reduce_ms":398,"trait_resolve_ms":0,"type_check_ms":147,"zonk_ms":0},"status":"pass","tests":15,"wall_ms":2706},{"cell_metrics":{"cells":27,"propagators":0},"file":"test-implicit-map-02.rkt","heartbeats":{"cell_allocs":509,"constraint_count":0,"constraint_retries":0,"elaborate_steps":110,"infer_steps":102,"meta_created":21,"meta_solved":21,"prop_allocs":0,"prop_firings":0,"reduce_steps":232,"resolution_cycles":21,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":33,"zonk_steps":185},"memory":{"gc_ms":81,"mem_after_bytes":194766648,"mem_before_bytes":194766056,"mem_retained_bytes":592},"phases":{"elaborate_ms":37,"parse_ms":0,"qtt_ms":19,"reduce_ms":83,"trait_resolve_ms":0,"type_check_ms":58,"zonk_ms":0},"status":"pass","tests":10,"wall_ms":7088},{"cell_metrics":{"cells":28,"propagators":0},"file":"test-io-main-01.rkt","heartbeats":{"cell_allocs":1726,"constraint_count":0,"constraint_retries":0,"elaborate_steps":97,"infer_steps":109,"meta_created":12,"meta_solved":3,"prop_allocs":0,"prop_firings":0,"reduce_steps":81,"resolution_cycles":3,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":61,"zonk_steps":129},"memory":{"gc_ms":66,"mem_after_bytes":157727712,"mem_before_bytes":157580440,"mem_retained_bytes":147272},"phases":{"elaborate_ms":50,"parse_ms":0,"qtt_ms":46,"reduce_ms":7,"trait_resolve_ms":0,"type_check_ms":74,"zonk_ms":0},"status":"pass","tests":11,"wall_ms":2578},{"cell_metrics":{"cells":17,"propagators":0},"file":"test-io-path-01.rkt","heartbeats":{"cell_allocs":224,"constraint_count":0,"constraint_retries":0,"elaborate_steps":38,"infer_steps":71,"meta_created":0,"meta_solved":0,"prop_allocs":0,"prop_firings":0,"reduce_steps":170,"resolution_cycles":0,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":9,"zonk_steps":56},"memory":{"gc_ms":56,"mem_after_bytes":140634016,"mem_before_bytes":140634136,"mem_retained_bytes":0},"phases":{"elaborate_ms":15,"parse_ms":0,"qtt_ms":0,"reduce_ms":83,"trait_resolve_ms":0,"type_check_ms":49,"zonk_ms":0},"status":"pass","tests":14,"wall_ms":2283},{"cell_metrics":{"cells":14,"propagators":0},"file":"test-kind-inference.rkt","heartbeats":{"cell_allocs":48,"constraint_count":0,"constraint_retries":0,"elaborate_steps":6,"infer_steps":3,"meta_created":0,"meta_solved":0,"prop_allocs":0,"prop_firings":0,"reduce_steps":6,"resolution_cycles":0,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":0,"zonk_steps":6},"memory":{"gc_ms":72,"mem_after_bytes":178067264,"mem_before_bytes":178085864,"mem_retained_bytes":0},"phases":{"elaborate_ms":1,"parse_ms":0,"qtt_ms":0,"reduce_ms":4,"trait_resolve_ms":0,"type_check_ms":0,"zonk_ms":0},"status":"pass","tests":22,"wall_ms":1067},{"cell_metrics":{"cells":17,"propagators":0},"file":"test-hashable-02.rkt","heartbeats":{"cell_allocs":213,"constraint_count":0,"constraint_retries":0,"elaborate_steps":47,"infer_steps":94,"meta_created":5,"meta_solved":5,"prop_allocs":0,"prop_firings":0,"reduce_steps":1977,"resolution_cycles":5,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":31,"zonk_steps":126},"memory":{"gc_ms":50,"mem_after_bytes":140204392,"mem_before_bytes":140201216,"mem_retained_bytes":3176},"phases":{"elaborate_ms":23,"parse_ms":0,"qtt_ms":0,"reduce_ms":10423,"trait_resolve_ms":0,"type_check_ms":114,"zonk_ms":0},"status":"pass","tests":7,"wall_ms":11511},{"cell_metrics":{"cells":14,"propagators":0},"file":"test-kind-inference-where.rkt","heartbeats":{"cell_allocs":229,"constraint_count":0,"constraint_retries":0,"elaborate_steps":180,"infer_steps":137,"meta_created":7,"meta_solved":7,"prop_allocs":0,"prop_firings":0,"reduce_steps":490,"resolution_cycles":7,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":110,"zonk_steps":254},"memory":{"gc_ms":58,"mem_after_bytes":148475680,"mem_before_bytes":148474816,"mem_retained_bytes":864},"phases":{"elaborate_ms":89,"parse_ms":0,"qtt_ms":80,"reduce_ms":377,"trait_resolve_ms":0,"type_check_ms":218,"zonk_ms":0},"status":"pass","tests":15,"wall_ms":2953},{"cell_metrics":{"cells":20,"propagators":0},"file":"test-list-literals.rkt","heartbeats":{"cell_allocs":122,"constraint_count":0,"constraint_retries":0,"elaborate_steps":43,"infer_steps":141,"meta_created":21,"meta_solved":21,"prop_allocs":0,"prop_firings":0,"reduce_steps":211,"resolution_cycles":21,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":55,"zonk_steps":133},"memory":{"gc_ms":74,"mem_after_bytes":178499032,"mem_before_bytes":178482408,"mem_retained_bytes":16624},"phases":{"elaborate_ms":49,"parse_ms":0,"qtt_ms":18,"reduce_ms":263,"trait_resolve_ms":0,"type_check_ms":146,"zonk_ms":0},"status":"pass","tests":32,"wall_ms":1442},{"cell_metrics":{"cells":24,"propagators":0},"file":"test-list-extended-01-01.rkt","heartbeats":{"cell_allocs":182,"constraint_count":0,"constraint_retries":0,"elaborate_steps":63,"infer_steps":247,"meta_created":38,"meta_solved":38,"prop_allocs":0,"prop_firings":0,"reduce_steps":841,"resolution_cycles":38,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":98,"zonk_steps":326},"memory":{"gc_ms":70,"mem_after_bytes":143498872,"mem_before_bytes":143503080,"mem_retained_bytes":0},"phases":{"elaborate_ms":107,"parse_ms":0,"qtt_ms":0,"reduce_ms":1498,"trait_resolve_ms":0,"type_check_ms":333,"zonk_ms":0},"status":"pass","tests":9,"wall_ms":3197},{"cell_metrics":{"cells":19,"propagators":0},"file":"test-lseq-01.rkt","heartbeats":{"cell_allocs":201,"constraint_count":0,"constraint_retries":0,"elaborate_steps":81,"infer_steps":173,"meta_created":0,"meta_solved":0,"prop_allocs":0,"prop_firings":0,"reduce_steps":291,"resolution_cycles":0,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":60,"zonk_steps":149},"memory":{"gc_ms":52,"mem_after_bytes":140390976,"mem_before_bytes":140346280,"mem_retained_bytes":44696},"phases":{"elaborate_ms":19,"parse_ms":0,"qtt_ms":22,"reduce_ms":261,"trait_resolve_ms":0,"type_check_ms":151,"zonk_ms":0},"status":"pass","tests":11,"wall_ms":1867},{"cell_metrics":{"cells":19,"propagators":0},"file":"test-lseq-traits.rkt","heartbeats":{"cell_allocs":185,"constraint_count":0,"constraint_retries":0,"elaborate_steps":30,"infer_steps":73,"meta_created":6,"meta_solved":4,"prop_allocs":0,"prop_firings":0,"reduce_steps":63,"resolution_cycles":4,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":47,"zonk_steps":122},"memory":{"gc_ms":52,"mem_after_bytes":143641488,"mem_before_bytes":143626024,"mem_retained_bytes":15464},"phases":{"elaborate_ms":57,"parse_ms":0,"qtt_ms":15,"reduce_ms":0,"trait_resolve_ms":0,"type_check_ms":191,"zonk_ms":0},"status":"pass","tests":11,"wall_ms":1735},{"cell_metrics":{"cells":28,"propagators":0},"file":"test-let-arrow-syntax.rkt","heartbeats":{"cell_allocs":1235,"constraint_count":0,"constraint_retries":0,"elaborate_steps":398,"infer_steps":257,"meta_created":0,"meta_solved":0,"prop_allocs":0,"prop_firings":0,"reduce_steps":238,"resolution_cycles":0,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":147,"zonk_steps":363},"memory":{"gc_ms":62,"mem_after_bytes":162517808,"mem_before_bytes":162516776,"mem_retained_bytes":1032},"phases":{"elaborate_ms":97,"parse_ms":0,"qtt_ms":85,"reduce_ms":85,"trait_resolve_ms":0,"type_check_ms":152,"zonk_ms":0},"status":"pass","tests":34,"wall_ms":5122},{"cell_metrics":{"cells":25,"propagators":0},"file":"test-map-bridge.rkt","heartbeats":{"cell_allocs":594,"constraint_count":0,"constraint_retries":0,"elaborate_steps":252,"infer_steps":304,"meta_created":6,"meta_solved":6,"prop_allocs":0,"prop_firings":0,"reduce_steps":221,"resolution_cycles":6,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":104,"zonk_steps":172},"memory":{"gc_ms":53,"mem_after_bytes":140619704,"mem_before_bytes":140572632,"mem_retained_bytes":47072},"phases":{"elaborate_ms":76,"parse_ms":0,"qtt_ms":11,"reduce_ms":33,"trait_resolve_ms":0,"type_check_ms":283,"zonk_ms":0},"status":"pass","tests":17,"wall_ms":2642},{"cell_metrics":{"cells":19,"propagators":0},"file":"test-map-entry.rkt","heartbeats":{"cell_allocs":172,"constraint_count":0,"constraint_retries":0,"elaborate_steps":66,"infer_steps":158,"meta_created":12,"meta_solved":12,"prop_allocs":0,"prop_firings":0,"reduce_steps":185,"resolution_cycles":12,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":54,"zonk_steps":84},"memory":{"gc_ms":54,"mem_after_bytes":143781216,"mem_before_bytes":143780328,"mem_retained_bytes":888},"phases":{"elaborate_ms":37,"parse_ms":0,"qtt_ms":0,"reduce_ms":49,"trait_resolve_ms":0,"type_check_ms":190,"zonk_ms":0},"status":"pass","tests":10,"wall_ms":1651},{"cell_metrics":{"cells":25,"propagators":0},"file":"test-list-extended-02-01.rkt","heartbeats":{"cell_allocs":255,"constraint_count":0,"constraint_retries":0,"elaborate_steps":136,"infer_steps":544,"meta_created":79,"meta_solved":79,"prop_allocs":0,"prop_firings":0,"reduce_steps":1889,"resolution_cycles":79,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":191,"zonk_steps":634},"memory":{"gc_ms":80,"mem_after_bytes":157606712,"mem_before_bytes":157600120,"mem_retained_bytes":6592},"phases":{"elaborate_ms":196,"parse_ms":0,"qtt_ms":0,"reduce_ms":3647,"trait_resolve_ms":0,"type_check_ms":690,"zonk_ms":0},"status":"pass","tests":11,"wall_ms":6147},{"cell_metrics":{"cells":21,"propagators":0},"file":"test-map-ops-eval.rkt","heartbeats":{"cell_allocs":741,"constraint_count":0,"constraint_retries":0,"elaborate_steps":317,"infer_steps":298,"meta_created":12,"meta_solved":12,"prop_allocs":0,"prop_firings":0,"reduce_steps":218,"resolution_cycles":12,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":47,"zonk_steps":285},"memory":{"gc_ms":64,"mem_after_bytes":162972848,"mem_before_bytes":162915088,"mem_retained_bytes":57760},"phases":{"elaborate_ms":119,"parse_ms":0,"qtt_ms":18,"reduce_ms":9,"trait_resolve_ms":0,"type_check_ms":153,"zonk_ms":0},"status":"pass","tests":14,"wall_ms":2453},{"cell_metrics":{"cells":21,"propagators":0},"file":"test-lseq-literal.rkt","heartbeats":{"cell_allocs":602,"constraint_count":0,"constraint_retries":0,"elaborate_steps":290,"infer_steps":510,"meta_created":47,"meta_solved":47,"prop_allocs":0,"prop_firings":0,"reduce_steps":933,"resolution_cycles":47,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":297,"zonk_steps":515},"memory":{"gc_ms":74,"mem_after_bytes":178776856,"mem_before_bytes":178738096,"mem_retained_bytes":38760},"phases":{"elaborate_ms":178,"parse_ms":0,"qtt_ms":307,"reduce_ms":1780,"trait_resolve_ms":0,"type_check_ms":526,"zonk_ms":0},"status":"pass","tests":25,"wall_ms":5342},{"cell_metrics":{"cells":17,"propagators":0},"file":"test-map-set-traits-01.rkt","heartbeats":{"cell_allocs":80,"constraint_count":0,"constraint_retries":0,"elaborate_steps":8,"infer_steps":8,"meta_created":0,"meta_solved":0,"prop_allocs":0,"prop_firings":0,"reduce_steps":3,"resolution_cycles":0,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":0,"zonk_steps":121},"memory":{"gc_ms":52,"mem_after_bytes":140764840,"mem_before_bytes":140766400,"mem_retained_bytes":0},"phases":{"elaborate_ms":1,"parse_ms":0,"qtt_ms":0,"reduce_ms":0,"trait_resolve_ms":0,"type_check_ms":14,"zonk_ms":0},"status":"pass","tests":12,"wall_ms":1604},{"file":"test-metavar.rkt","status":"pass","tests":30,"wall_ms":292},{"cell_metrics":{"cells":18,"propagators":0},"file":"test-lattice.rkt","heartbeats":{"cell_allocs":739,"constraint_count":0,"constraint_retries":0,"elaborate_steps":219,"infer_steps":459,"meta_created":47,"meta_solved":47,"prop_allocs":0,"prop_firings":0,"reduce_steps":1355,"resolution_cycles":47,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":255,"zonk_steps":896},"memory":{"gc_ms":66,"mem_after_bytes":166453832,"mem_before_bytes":166472208,"mem_retained_bytes":0},"phases":{"elaborate_ms":330,"parse_ms":0,"qtt_ms":282,"reduce_ms":1444,"trait_resolve_ms":0,"type_check_ms":1435,"zonk_ms":0},"status":"pass","tests":28,"wall_ms":8099},{"cell_metrics":{"cells":25,"propagators":0},"file":"test-lseq-02.rkt","heartbeats":{"cell_allocs":945,"constraint_count":0,"constraint_retries":0,"elaborate_steps":327,"infer_steps":657,"meta_created":0,"meta_solved":0,"prop_allocs":0,"prop_firings":0,"reduce_steps":1245,"resolution_cycles":0,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":275,"zonk_steps":635},"memory":{"gc_ms":62,"mem_after_bytes":148721960,"mem_before_bytes":148729936,"mem_retained_bytes":0},"phases":{"elaborate_ms":83,"parse_ms":0,"qtt_ms":230,"reduce_ms":3214,"trait_resolve_ms":0,"type_check_ms":572,"zonk_ms":0},"status":"pass","tests":17,"wall_ms":6554},{"cell_metrics":{"cells":21,"propagators":0},"file":"test-io-csv-02.rkt","heartbeats":{"cell_allocs":154,"constraint_count":0,"constraint_retries":0,"elaborate_steps":32,"infer_steps":55,"meta_created":6,"meta_solved":0,"prop_allocs":0,"prop_firings":0,"reduce_steps":2985,"resolution_cycles":0,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":10,"zonk_steps":66},"memory":{"gc_ms":190,"mem_after_bytes":164881520,"mem_before_bytes":164931704,"mem_retained_bytes":0},"phases":{"elaborate_ms":23,"parse_ms":0,"qtt_ms":6,"reduce_ms":10827,"trait_resolve_ms":0,"type_check_ms":58,"zonk_ms":0},"status":"pass","tests":8,"wall_ms":12519},{"file":"test-module-network-01.rkt","status":"pass","tests":24,"wall_ms":195},{"cell_metrics":{"cells":21,"propagators":0},"file":"test-map-set-traits-02.rkt","heartbeats":{"cell_allocs":377,"constraint_count":0,"constraint_retries":0,"elaborate_steps":77,"infer_steps":66,"meta_created":0,"meta_solved":0,"prop_allocs":0,"prop_firings":0,"reduce_steps":30,"resolution_cycles":0,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":17,"zonk_steps":177},"memory":{"gc_ms":53,"mem_after_bytes":143912360,"mem_before_bytes":143896568,"mem_retained_bytes":15792},"phases":{"elaborate_ms":16,"parse_ms":0,"qtt_ms":1,"reduce_ms":0,"trait_resolve_ms":0,"type_check_ms":31,"zonk_ms":0},"status":"pass","tests":15,"wall_ms":2115},{"file":"test-mult-lattice.rkt","status":"pass","tests":9,"wall_ms":79},{"cell_metrics":{"cells":25,"propagators":0},"file":"test-list-extended-02-02.rkt","heartbeats":{"cell_allocs":297,"constraint_count":0,"constraint_retries":0,"elaborate_steps":145,"infer_steps":497,"meta_created":71,"meta_solved":71,"prop_allocs":0,"prop_firings":0,"reduce_steps":1590,"resolution_cycles":71,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":179,"zonk_steps":581},"memory":{"gc_ms":184,"mem_after_bytes":140905272,"mem_before_bytes":140896280,"mem_retained_bytes":8992},"phases":{"elaborate_ms":191,"parse_ms":0,"qtt_ms":0,"reduce_ms":6299,"trait_resolve_ms":0,"type_check_ms":622,"zonk_ms":0},"status":"pass","tests":14,"wall_ms":8926},{"cell_metrics":{"cells":32,"propagators":0},"file":"test-method-resolution.rkt","heartbeats":{"cell_allocs":386,"constraint_count":0,"constraint_retries":0,"elaborate_steps":203,"infer_steps":188,"meta_created":12,"meta_solved":12,"prop_allocs":0,"prop_firings":0,"reduce_steps":596,"resolution_cycles":12,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":124,"zonk_steps":294},"memory":{"gc_ms":53,"mem_after_bytes":141464872,"mem_before_bytes":141430224,"mem_retained_bytes":34648},"phases":{"elaborate_ms":88,"parse_ms":0,"qtt_ms":104,"reduce_ms":420,"trait_resolve_ms":0,"type_check_ms":205,"zonk_ms":0},"status":"pass","tests":23,"wall_ms":2182},{"file":"test-namespace.rkt","status":"pass","tests":20,"wall_ms":169},{"cell_metrics":{"cells":19,"propagators":0},"file":"test-map.rkt","heartbeats":{"cell_allocs":434,"constraint_count":0,"constraint_retries":0,"elaborate_steps":150,"infer_steps":108,"meta_created":6,"meta_solved":4,"prop_allocs":0,"prop_firings":0,"reduce_steps":196,"resolution_cycles":4,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":16,"zonk_steps":162},"memory":{"gc_ms":58,"mem_after_bytes":158334776,"mem_before_bytes":158320928,"mem_retained_bytes":13848},"phases":{"elaborate_ms":57,"parse_ms":0,"qtt_ms":6,"reduce_ms":54,"trait_resolve_ms":0,"type_check_ms":67,"zonk_ms":0},"status":"pass","tests":37,"wall_ms":3243},{"cell_metrics":{"cells":21,"propagators":0},"file":"test-mult-propagator.rkt","heartbeats":{"cell_allocs":170,"constraint_count":0,"constraint_retries":0,"elaborate_steps":30,"infer_steps":31,"meta_created":0,"meta_solved":0,"prop_allocs":0,"prop_firings":0,"reduce_steps":183,"resolution_cycles":0,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":3,"zonk_steps":40},"memory":{"gc_ms":55,"mem_after_bytes":144638376,"mem_before_bytes":144564584,"mem_retained_bytes":73792},"phases":{"elaborate_ms":14,"parse_ms":0,"qtt_ms":1,"reduce_ms":237,"trait_resolve_ms":0,"type_check_ms":18,"zonk_ms":0},"status":"pass","tests":14,"wall_ms":1474},{"cell_metrics":{"cells":18,"propagators":0},"file":"test-mult-inference.rkt","heartbeats":{"cell_allocs":216,"constraint_count":0,"constraint_retries":0,"elaborate_steps":51,"infer_steps":51,"meta_created":1,"meta_solved":1,"prop_allocs":0,"prop_firings":0,"reduce_steps":89,"resolution_cycles":1,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":21,"zonk_steps":70},"memory":{"gc_ms":62,"mem_after_bytes":165809344,"mem_before_bytes":165789920,"mem_retained_bytes":19424},"phases":{"elaborate_ms":17,"parse_ms":0,"qtt_ms":6,"reduce_ms":54,"trait_resolve_ms":0,"type_check_ms":42,"zonk_ms":0},"status":"pass","tests":23,"wall_ms":1686},{"file":"test-narrowing-01.rkt","status":"pass","tests":31,"wall_ms":220},{"cell_metrics":{"cells":22,"propagators":0},"file":"test-mixed-map.rkt","heartbeats":{"cell_allocs":469,"constraint_count":0,"constraint_retries":0,"elaborate_steps":143,"infer_steps":282,"meta_created":38,"meta_solved":50,"prop_allocs":0,"prop_firings":0,"reduce_steps":194,"resolution_cycles":50,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":108,"zonk_steps":306},"memory":{"gc_ms":66,"mem_after_bytes":179774072,"mem_before_bytes":179779912,"mem_retained_bytes":0},"phases":{"elaborate_ms":44,"parse_ms":0,"qtt_ms":41,"reduce_ms":21,"trait_resolve_ms":0,"type_check_ms":147,"zonk_ms":0},"status":"pass","tests":21,"wall_ms":2744},{"cell_metrics":{"cells":23,"propagators":0},"file":"test-multi-body-defn.rkt","heartbeats":{"cell_allocs":752,"constraint_count":0,"constraint_retries":0,"elaborate_steps":190,"infer_steps":103,"meta_created":0,"meta_solved":0,"prop_allocs":0,"prop_firings":0,"reduce_steps":131,"resolution_cycles":0,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":97,"zonk_steps":193},"memory":{"gc_ms":48,"mem_after_bytes":141151200,"mem_before_bytes":141160232,"mem_retained_bytes":0},"phases":{"elaborate_ms":51,"parse_ms":0,"qtt_ms":45,"reduce_ms":28,"trait_resolve_ms":0,"type_check_ms":64,"zonk_ms":0},"status":"pass","tests":15,"wall_ms":1637},{"cell_metrics":{"cells":34,"propagators":0},"file":"test-list-extended-01-02.rkt","heartbeats":{"cell_allocs":485,"constraint_count":0,"constraint_retries":0,"elaborate_steps":202,"infer_steps":675,"meta_created":97,"meta_solved":97,"prop_allocs":0,"prop_firings":0,"reduce_steps":2427,"resolution_cycles":97,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":260,"zonk_steps":817},"memory":{"gc_ms":116,"mem_after_bytes":194694616,"mem_before_bytes":194727216,"mem_retained_bytes":0},"phases":{"elaborate_ms":259,"parse_ms":0,"qtt_ms":4,"reduce_ms":6984,"trait_resolve_ms":0,"type_check_ms":878,"zonk_ms":0},"status":"pass","tests":15,"wall_ms":11314},{"cell_metrics":{"cells":31,"propagators":0},"file":"test-match-builtins.rkt","heartbeats":{"cell_allocs":736,"constraint_count":0,"constraint_retries":0,"elaborate_steps":286,"infer_steps":255,"meta_created":0,"meta_solved":0,"prop_allocs":0,"prop_firings":0,"reduce_steps":282,"resolution_cycles":0,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":55,"zonk_steps":304},"memory":{"gc_ms":58,"mem_after_bytes":163284296,"mem_before_bytes":163239704,"mem_retained_bytes":44592},"phases":{"elaborate_ms":100,"parse_ms":0,"qtt_ms":0,"reduce_ms":135,"trait_resolve_ms":0,"type_check_ms":119,"zonk_ms":0},"status":"pass","tests":24,"wall_ms":4080},{"cell_metrics":{"cells":17,"propagators":0},"file":"test-negative-literals.rkt","heartbeats":{"cell_allocs":112,"constraint_count":0,"constraint_retries":0,"elaborate_steps":9,"infer_steps":9,"meta_created":0,"meta_solved":0,"prop_allocs":0,"prop_firings":0,"reduce_steps":14,"resolution_cycles":0,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":0,"zonk_steps":16},"memory":{"gc_ms":50,"mem_after_bytes":141550552,"mem_before_bytes":141553112,"mem_retained_bytes":0},"phases":{"elaborate_ms":5,"parse_ms":0,"qtt_ms":0,"reduce_ms":7,"trait_resolve_ms":0,"type_check_ms":2,"zonk_ms":0},"status":"pass","tests":25,"wall_ms":974},{"cell_metrics":{"cells":29,"propagators":0},"file":"test-nil-type.rkt","heartbeats":{"cell_allocs":576,"constraint_count":0,"constraint_retries":0,"elaborate_steps":82,"infer_steps":66,"meta_created":8,"meta_solved":8,"prop_allocs":0,"prop_firings":0,"reduce_steps":106,"resolution_cycles":8,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":19,"zonk_steps":105},"memory":{"gc_ms":61,"mem_after_bytes":163963736,"mem_before_bytes":163963072,"mem_retained_bytes":664},"phases":{"elaborate_ms":19,"parse_ms":0,"qtt_ms":12,"reduce_ms":18,"trait_resolve_ms":0,"type_check_ms":30,"zonk_ms":0},"status":"pass","tests":45,"wall_ms":2947},{"cell_metrics":{"cells":19,"propagators":0},"file":"test-mixfix-01.rkt","heartbeats":{"cell_allocs":177,"constraint_count":0,"constraint_retries":0,"elaborate_steps":42,"infer_steps":42,"meta_created":0,"meta_solved":0,"prop_allocs":0,"prop_firings":0,"reduce_steps":50,"resolution_cycles":0,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":2,"zonk_steps":52},"memory":{"gc_ms":70,"mem_after_bytes":184717016,"mem_before_bytes":184735088,"mem_retained_bytes":0},"phases":{"elaborate_ms":11,"parse_ms":0,"qtt_ms":2,"reduce_ms":22,"trait_resolve_ms":0,"type_check_ms":12,"zonk_ms":0},"status":"pass","tests":36,"wall_ms":6809},{"file":"test-numeric-join.rkt","status":"pass","tests":25,"wall_ms":147},{"cell_metrics":{"cells":17,"propagators":0},"file":"test-numeric-coercion.rkt","heartbeats":{"cell_allocs":368,"constraint_count":0,"constraint_retries":0,"elaborate_steps":73,"infer_steps":73,"meta_created":0,"meta_solved":0,"prop_allocs":0,"prop_firings":0,"reduce_steps":90,"resolution_cycles":0,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":0,"zonk_steps":87},"memory":{"gc_ms":52,"mem_after_bytes":141872024,"mem_before_bytes":141874224,"mem_retained_bytes":0},"phases":{"elaborate_ms":19,"parse_ms":0,"qtt_ms":0,"reduce_ms":39,"trait_resolve_ms":0,"type_check_ms":21,"zonk_ms":0},"status":"pass","tests":23,"wall_ms":2654},{"cell_metrics":{"cells":19,"propagators":0},"file":"test-new-lattice-cell.rkt","heartbeats":{"cell_allocs":1020,"constraint_count":0,"constraint_retries":0,"elaborate_steps":543,"infer_steps":442,"meta_created":0,"meta_solved":0,"prop_allocs":0,"prop_firings":0,"reduce_steps":771,"resolution_cycles":0,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":301,"zonk_steps":648},"memory":{"gc_ms":81,"mem_after_bytes":195014624,"mem_before_bytes":195061448,"mem_retained_bytes":0},"phases":{"elaborate_ms":179,"parse_ms":0,"qtt_ms":415,"reduce_ms":404,"trait_resolve_ms":0,"type_check_ms":566,"zonk_ms":1},"status":"pass","tests":10,"wall_ms":3614},{"cell_metrics":{"cells":18,"propagators":0},"file":"test-mixfix-02.rkt","heartbeats":{"cell_allocs":160,"constraint_count":0,"constraint_retries":0,"elaborate_steps":81,"infer_steps":179,"meta_created":16,"meta_solved":16,"prop_allocs":0,"prop_firings":0,"reduce_steps":175,"resolution_cycles":16,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":51,"zonk_steps":189},"memory":{"gc_ms":64,"mem_after_bytes":167006496,"mem_before_bytes":166997016,"mem_retained_bytes":9480},"phases":{"elaborate_ms":50,"parse_ms":0,"qtt_ms":0,"reduce_ms":61,"trait_resolve_ms":0,"type_check_ms":166,"zonk_ms":0},"status":"pass","tests":29,"wall_ms":6781},{"file":"test-observatory-01.rkt","status":"pass","tests":18,"wall_ms":227},{"file":"test-parse-integration.rkt","status":"pass","tests":7,"wall_ms":101},{"file":"test-parse-bridges.rkt","status":"pass","tests":23,"wall_ms":141},{"file":"test-observatory-02.rkt","status":"pass","tests":10,"wall_ms":244},{"file":"test-parse-lattice.rkt","status":"pass","tests":27,"wall_ms":167},{"cell_metrics":{"cells":32,"propagators":0},"file":"test-native-collection-ops.rkt","heartbeats":{"cell_allocs":848,"constraint_count":0,"constraint_retries":0,"elaborate_steps":372,"infer_steps":394,"meta_created":16,"meta_solved":16,"prop_allocs":0,"prop_firings":0,"reduce_steps":569,"resolution_cycles":16,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":109,"zonk_steps":406},"memory":{"gc_ms":69,"mem_after_bytes":180258368,"mem_before_bytes":180285264,"mem_retained_bytes":0},"phases":{"elaborate_ms":103,"parse_ms":0,"qtt_ms":11,"reduce_ms":235,"trait_resolve_ms":0,"type_check_ms":170,"zonk_ms":0},"status":"pass","tests":27,"wall_ms":4851},{"file":"test-parser-relational.rkt","status":"pass","tests":29,"wall_ms":288},{"file":"test-parser.rkt","status":"pass","tests":82,"wall_ms":647},{"cell_metrics":{"cells":17,"propagators":0},"file":"test-narrow-syntax-01.rkt","heartbeats":{"cell_allocs":80,"constraint_count":0,"constraint_retries":0,"elaborate_steps":24,"infer_steps":22,"meta_created":0,"meta_solved":0,"prop_allocs":0,"prop_firings":0,"reduce_steps":60,"resolution_cycles":0,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":0,"zonk_steps":27},"memory":{"gc_ms":60,"mem_after_bytes":161009032,"mem_before_bytes":161012664,"mem_retained_bytes":0},"phases":{"elaborate_ms":5,"parse_ms":0,"qtt_ms":0,"reduce_ms":30,"trait_resolve_ms":0,"type_check_ms":6,"zonk_ms":0},"status":"pass","tests":16,"wall_ms":6355},{"file":"test-perf-counters.rkt","status":"pass","tests":6,"wall_ms":216},{"cell_metrics":{"cells":19,"propagators":0},"file":"test-narrow-syntax-02.rkt","heartbeats":{"cell_allocs":151,"constraint_count":0,"constraint_retries":0,"elaborate_steps":42,"infer_steps":43,"meta_created":1,"meta_solved":1,"prop_allocs":0,"prop_firings":0,"reduce_steps":83,"resolution_cycles":1,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":6,"zonk_steps":54},"memory":{"gc_ms":68,"mem_after_bytes":176517856,"mem_before_bytes":176526856,"mem_retained_bytes":0},"phases":{"elaborate_ms":14,"parse_ms":0,"qtt_ms":5,"reduce_ms":35,"trait_resolve_ms":0,"type_check_ms":14,"zonk_ms":0},"status":"pass","tests":8,"wall_ms":6752},{"file":"test-phase-timing.rkt","status":"pass","tests":7,"wall_ms":560},{"cell_metrics":{"cells":19,"propagators":0},"file":"test-narrowing-search-02.rkt","heartbeats":{"cell_allocs":139,"constraint_count":0,"constraint_retries":0,"elaborate_steps":43,"infer_steps":42,"meta_created":1,"meta_solved":1,"prop_allocs":0,"prop_firings":0,"reduce_steps":83,"resolution_cycles":1,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":6,"zonk_steps":52},"memory":{"gc_ms":61,"mem_after_bytes":163404848,"mem_before_bytes":162954040,"mem_retained_bytes":450808},"phases":{"elaborate_ms":14,"parse_ms":0,"qtt_ms":4,"reduce_ms":35,"trait_resolve_ms":0,"type_check_ms":16,"zonk_ms":0},"status":"pass","tests":7,"wall_ms":6908},{"cell_metrics":{"cells":24,"propagators":0},"file":"test-path-expressions.rkt","heartbeats":{"cell_allocs":324,"constraint_count":0,"constraint_retries":0,"elaborate_steps":71,"infer_steps":188,"meta_created":16,"meta_solved":16,"prop_allocs":0,"prop_firings":0,"reduce_steps":326,"resolution_cycles":16,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":34,"zonk_steps":274},"memory":{"gc_ms":65,"mem_after_bytes":180637144,"mem_before_bytes":180647216,"mem_retained_bytes":0},"phases":{"elaborate_ms":16,"parse_ms":0,"qtt_ms":10,"reduce_ms":98,"trait_resolve_ms":0,"type_check_ms":78,"zonk_ms":0},"status":"pass","tests":20,"wall_ms":2236},{"cell_metrics":{"cells":17,"propagators":0},"file":"test-narrowing-search-01.rkt","heartbeats":{"cell_allocs":128,"constraint_count":0,"constraint_retries":0,"elaborate_steps":36,"infer_steps":36,"meta_created":0,"meta_solved":0,"prop_allocs":0,"prop_firings":0,"reduce_steps":89,"resolution_cycles":0,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":0,"zonk_steps":44},"memory":{"gc_ms":69,"mem_after_bytes":184278592,"mem_before_bytes":184219728,"mem_retained_bytes":58864},"phases":{"elaborate_ms":13,"parse_ms":0,"qtt_ms":0,"reduce_ms":46,"trait_resolve_ms":0,"type_check_ms":9,"zonk_ms":0},"status":"pass","tests":15,"wall_ms":7402},{"file":"test-pipe-compose.rkt","status":"pass","tests":45,"wall_ms":198},{"cell_metrics":{"cells":26,"propagators":3},"file":"test-numeric-traits-01.rkt","heartbeats":{"cell_allocs":453,"constraint_count":0,"constraint_retries":0,"elaborate_steps":229,"infer_steps":273,"meta_created":10,"meta_solved":10,"prop_allocs":0,"prop_firings":0,"reduce_steps":615,"resolution_cycles":10,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":121,"zonk_steps":349},"memory":{"gc_ms":68,"mem_after_bytes":184756792,"mem_before_bytes":184780880,"mem_retained_bytes":0},"phases":{"elaborate_ms":78,"parse_ms":0,"qtt_ms":66,"reduce_ms":325,"trait_resolve_ms":0,"type_check_ms":280,"zonk_ms":0},"status":"pass","tests":18,"wall_ms":3901},{"cell_metrics":{"cells":23,"propagators":0},"file":"test-numeric-traits-02.rkt","heartbeats":{"cell_allocs":615,"constraint_count":0,"constraint_retries":0,"elaborate_steps":527,"infer_steps":353,"meta_created":40,"meta_solved":37,"prop_allocs":0,"prop_firings":0,"reduce_steps":690,"resolution_cycles":10,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":177,"zonk_steps":707},"memory":{"gc_ms":61,"mem_after_bytes":164677784,"mem_before_bytes":164686456,"mem_retained_bytes":0},"phases":{"elaborate_ms":421,"parse_ms":0,"qtt_ms":157,"reduce_ms":576,"trait_resolve_ms":0,"type_check_ms":635,"zonk_ms":0},"status":"pass","tests":18,"wall_ms":4612},{"cell_metrics":{"cells":17,"propagators":0},"file":"test-posit-eq.rkt","heartbeats":{"cell_allocs":128,"constraint_count":0,"constraint_retries":0,"elaborate_steps":28,"infer_steps":40,"meta_created":0,"meta_solved":0,"prop_allocs":0,"prop_firings":0,"reduce_steps":62,"resolution_cycles":0,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":4,"zonk_steps":41},"memory":{"gc_ms":68,"mem_after_bytes":184909424,"mem_before_bytes":184912176,"mem_retained_bytes":0},"phases":{"elaborate_ms":10,"parse_ms":0,"qtt_ms":0,"reduce_ms":27,"trait_resolve_ms":0,"type_check_ms":55,"zonk_ms":0},"status":"pass","tests":16,"wall_ms":1450},{"file":"test-posit-impl.rkt","status":"pass","tests":18,"wall_ms":172},{"cell_metrics":{"cells":22,"propagators":0},"file":"test-placeholder.rkt","heartbeats":{"cell_allocs":457,"constraint_count":0,"constraint_retries":0,"elaborate_steps":330,"infer_steps":274,"meta_created":0,"meta_solved":0,"prop_allocs":0,"prop_firings":0,"reduce_steps":291,"resolution_cycles":0,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":146,"zonk_steps":310},"memory":{"gc_ms":70,"mem_after_bytes":184960136,"mem_before_bytes":184938320,"mem_retained_bytes":21816},"phases":{"elaborate_ms":95,"parse_ms":0,"qtt_ms":60,"reduce_ms":122,"trait_resolve_ms":0,"type_check_ms":162,"zonk_ms":0},"status":"pass","tests":20,"wall_ms":2656},{"cell_metrics":{"cells":19,"propagators":0},"file":"test-posit16.rkt","heartbeats":{"cell_allocs":255,"constraint_count":0,"constraint_retries":0,"elaborate_steps":48,"infer_steps":42,"meta_created":0,"meta_solved":0,"prop_allocs":0,"prop_firings":0,"reduce_steps":43,"resolution_cycles":0,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":10,"zonk_steps":52},"memory":{"gc_ms":74,"mem_after_bytes":185823592,"mem_before_bytes":185832200,"mem_retained_bytes":0},"phases":{"elaborate_ms":11,"parse_ms":0,"qtt_ms":3,"reduce_ms":12,"trait_resolve_ms":0,"type_check_ms":15,"zonk_ms":0},"status":"pass","tests":23,"wall_ms":2288},{"file":"test-parse-reader.rkt","status":"pass","tests":108,"wall_ms":7553},{"cell_metrics":{"cells":19,"propagators":0},"file":"test-posit32.rkt","heartbeats":{"cell_allocs":255,"constraint_count":0,"constraint_retries":0,"elaborate_steps":48,"infer_steps":42,"meta_created":0,"meta_solved":0,"prop_allocs":0,"prop_firings":0,"reduce_steps":43,"resolution_cycles":0,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":10,"zonk_steps":52},"memory":{"gc_ms":74,"mem_after_bytes":185444568,"mem_before_bytes":185451464,"mem_retained_bytes":0},"phases":{"elaborate_ms":13,"parse_ms":0,"qtt_ms":5,"reduce_ms":11,"trait_resolve_ms":0,"type_check_ms":15,"zonk_ms":0},"status":"pass","tests":23,"wall_ms":2291},{"file":"test-postfix-index-01.rkt","status":"pass","tests":11,"wall_ms":71},{"file":"test-postfix-index-02.rkt","status":"pass","tests":12,"wall_ms":90},{"cell_metrics":{"cells":17,"propagators":0},"file":"test-posit-identity.rkt","heartbeats":{"cell_allocs":215,"constraint_count":0,"constraint_retries":0,"elaborate_steps":47,"infer_steps":124,"meta_created":7,"meta_solved":7,"prop_allocs":0,"prop_firings":0,"reduce_steps":386,"resolution_cycles":7,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":37,"zonk_steps":132},"memory":{"gc_ms":63,"mem_after_bytes":164794312,"mem_before_bytes":164794320,"mem_retained_bytes":0},"phases":{"elaborate_ms":35,"parse_ms":0,"qtt_ms":0,"reduce_ms":1362,"trait_resolve_ms":0,"type_check_ms":154,"zonk_ms":0},"status":"pass","tests":13,"wall_ms":3961},{"cell_metrics":{"cells":41,"propagators":0},"file":"test-pattern-defn-01.rkt","heartbeats":{"cell_allocs":711,"constraint_count":0,"constraint_retries":0,"elaborate_steps":206,"infer_steps":187,"meta_created":15,"meta_solved":14,"prop_allocs":0,"prop_firings":0,"reduce_steps":215,"resolution_cycles":14,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":44,"zonk_steps":258},"memory":{"gc_ms":92,"mem_after_bytes":214528016,"mem_before_bytes":214497264,"mem_retained_bytes":30752},"phases":{"elaborate_ms":69,"parse_ms":0,"qtt_ms":29,"reduce_ms":136,"trait_resolve_ms":0,"type_check_ms":109,"zonk_ms":0},"status":"pass","tests":14,"wall_ms":8499},{"cell_metrics":{"cells":27,"propagators":0},"file":"test-pipe-compose-e2e-01.rkt","heartbeats":{"cell_allocs":244,"constraint_count":0,"constraint_retries":0,"elaborate_steps":92,"infer_steps":115,"meta_created":0,"meta_solved":0,"prop_allocs":0,"prop_firings":0,"reduce_steps":39,"resolution_cycles":0,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":59,"zonk_steps":100},"memory":{"gc_ms":76,"mem_after_bytes":194401064,"mem_before_bytes":194349656,"mem_retained_bytes":51408},"phases":{"elaborate_ms":35,"parse_ms":0,"qtt_ms":90,"reduce_ms":9,"trait_resolve_ms":0,"type_check_ms":112,"zonk_ms":0},"status":"pass","tests":5,"wall_ms":8088},{"cell_metrics":{"cells":19,"propagators":0},"file":"test-posit64.rkt","heartbeats":{"cell_allocs":255,"constraint_count":0,"constraint_retries":0,"elaborate_steps":48,"infer_steps":42,"meta_created":0,"meta_solved":0,"prop_allocs":0,"prop_firings":0,"reduce_steps":43,"resolution_cycles":0,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":10,"zonk_steps":52},"memory":{"gc_ms":74,"mem_after_bytes":186308608,"mem_before_bytes":186254024,"mem_retained_bytes":54584},"phases":{"elaborate_ms":13,"parse_ms":0,"qtt_ms":7,"reduce_ms":19,"trait_resolve_ms":0,"type_check_ms":19,"zonk_ms":1},"status":"pass","tests":23,"wall_ms":2659},{"cell_metrics":{"cells":19,"propagators":0},"file":"test-posit8.rkt","heartbeats":{"cell_allocs":255,"constraint_count":0,"constraint_retries":0,"elaborate_steps":48,"infer_steps":42,"meta_created":0,"meta_solved":0,"prop_allocs":0,"prop_firings":0,"reduce_steps":43,"resolution_cycles":0,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":10,"zonk_steps":52},"memory":{"gc_ms":73,"mem_after_bytes":169821288,"mem_before_bytes":169784592,"mem_retained_bytes":36696},"phases":{"elaborate_ms":12,"parse_ms":0,"qtt_ms":4,"reduce_ms":26,"trait_resolve_ms":0,"type_check_ms":27,"zonk_ms":0},"status":"pass","tests":23,"wall_ms":2411},{"file":"test-prelude.rkt","status":"pass","tests":41,"wall_ms":157},{"cell_metrics":{"cells":28,"propagators":0},"file":"test-pipe-compose-e2e-02a.rkt","heartbeats":{"cell_allocs":301,"constraint_count":0,"constraint_retries":0,"elaborate_steps":118,"infer_steps":139,"meta_created":0,"meta_solved":0,"prop_allocs":0,"prop_firings":0,"reduce_steps":55,"resolution_cycles":0,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":59,"zonk_steps":136},"memory":{"gc_ms":74,"mem_after_bytes":179441296,"mem_before_bytes":179398224,"mem_retained_bytes":43072},"phases":{"elaborate_ms":46,"parse_ms":0,"qtt_ms":80,"reduce_ms":23,"trait_resolve_ms":0,"type_check_ms":104,"zonk_ms":0},"status":"pass","tests":7,"wall_ms":8268},{"cell_metrics":{"cells":62,"propagators":0},"file":"test-pattern-defn-02.rkt","heartbeats":{"cell_allocs":1729,"constraint_count":0,"constraint_retries":0,"elaborate_steps":386,"infer_steps":391,"meta_created":25,"meta_solved":24,"prop_allocs":0,"prop_firings":0,"reduce_steps":418,"resolution_cycles":24,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":101,"zonk_steps":521},"memory":{"gc_ms":68,"mem_after_bytes":163163624,"mem_before_bytes":163076200,"mem_retained_bytes":87424},"phases":{"elaborate_ms":155,"parse_ms":0,"qtt_ms":27,"reduce_ms":345,"trait_resolve_ms":0,"type_check_ms":267,"zonk_ms":2},"status":"pass","tests":14,"wall_ms":9410},{"file":"test-pretty-print.rkt","status":"pass","tests":41,"wall_ms":276},{"file":"test-process-parse-01.rkt","status":"pass","tests":17,"wall_ms":246},{"cell_metrics":{"cells":29,"propagators":0},"file":"test-pipe-compose-e2e-03.rkt","heartbeats":{"cell_allocs":223,"constraint_count":0,"constraint_retries":0,"elaborate_steps":113,"infer_steps":137,"meta_created":0,"meta_solved":0,"prop_allocs":0,"prop_firings":0,"reduce_steps":51,"resolution_cycles":0,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":59,"zonk_steps":131},"memory":{"gc_ms":83,"mem_after_bytes":198889720,"mem_before_bytes":198847576,"mem_retained_bytes":42144},"phases":{"elaborate_ms":36,"parse_ms":0,"qtt_ms":110,"reduce_ms":16,"trait_resolve_ms":0,"type_check_ms":118,"zonk_ms":0},"status":"pass","tests":4,"wall_ms":8127},{"file":"test-propagator-descending-01.rkt","status":"pass","tests":15,"wall_ms":3},{"file":"test-propagator-bsp.rkt","status":"pass","tests":18,"wall_ms":212},{"cell_metrics":{"cells":22,"propagators":0},"file":"test-process-ws-01.rkt","heartbeats":{"cell_allocs":95,"constraint_count":0,"constraint_retries":0,"elaborate_steps":8,"infer_steps":2,"meta_created":0,"meta_solved":0,"prop_allocs":0,"prop_firings":0,"reduce_steps":2,"resolution_cycles":0,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":0,"zonk_steps":0},"memory":{"gc_ms":66,"mem_after_bytes":163080344,"mem_before_bytes":163080656,"mem_retained_bytes":0},"phases":{"elaborate_ms":3,"parse_ms":0,"qtt_ms":0,"reduce_ms":0,"trait_resolve_ms":0,"type_check_ms":2,"zonk_ms":0},"status":"pass","tests":24,"wall_ms":594},{"cell_metrics":{"cells":21,"propagators":0},"file":"test-prelude-numerics.rkt","heartbeats":{"cell_allocs":186,"constraint_count":0,"constraint_retries":0,"elaborate_steps":69,"infer_steps":50,"meta_created":2,"meta_solved":2,"prop_allocs":0,"prop_firings":0,"reduce_steps":51,"resolution_cycles":2,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":34,"zonk_steps":93},"memory":{"gc_ms":86,"mem_after_bytes":214352400,"mem_before_bytes":214352408,"mem_retained_bytes":0},"phases":{"elaborate_ms":33,"parse_ms":0,"qtt_ms":32,"reduce_ms":13,"trait_resolve_ms":0,"type_check_ms":68,"zonk_ms":0},"status":"pass","tests":9,"wall_ms":2067},{"file":"test-propagator-network.rkt","status":"pass","tests":16,"wall_ms":143},{"cell_metrics":{"cells":29,"propagators":0},"file":"test-prelude-collections.rkt","heartbeats":{"cell_allocs":473,"constraint_count":0,"constraint_retries":0,"elaborate_steps":72,"infer_steps":67,"meta_created":1,"meta_solved":0,"prop_allocs":0,"prop_firings":0,"reduce_steps":34,"resolution_cycles":0,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":19,"zonk_steps":143},"memory":{"gc_ms":66,"mem_after_bytes":164963072,"mem_before_bytes":164963352,"mem_retained_bytes":0},"phases":{"elaborate_ms":26,"parse_ms":0,"qtt_ms":5,"reduce_ms":0,"trait_resolve_ms":0,"type_check_ms":32,"zonk_ms":1},"status":"pass","tests":17,"wall_ms":3065},{"file":"test-propagator.rkt","status":"pass","tests":27,"wall_ms":2},{"file":"test-propagator-persistence.rkt","status":"pass","tests":17,"wall_ms":193},{"file":"test-propagator-types.rkt","status":"pass","tests":32,"wall_ms":349},{"cell_metrics":{"cells":27,"propagators":0},"file":"test-process-ws-02.rkt","heartbeats":{"cell_allocs":319,"constraint_count":0,"constraint_retries":0,"elaborate_steps":23,"infer_steps":6,"meta_created":0,"meta_solved":0,"prop_allocs":0,"prop_firings":0,"reduce_steps":6,"resolution_cycles":0,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":0,"zonk_steps":0},"memory":{"gc_ms":65,"mem_after_bytes":170917848,"mem_before_bytes":170916808,"mem_retained_bytes":1040},"phases":{"elaborate_ms":5,"parse_ms":0,"qtt_ms":0,"reduce_ms":0,"trait_resolve_ms":0,"type_check_ms":0,"zonk_ms":0},"status":"pass","tests":7,"wall_ms":1820},{"file":"test-provenance.rkt","status":"pass","tests":8,"wall_ms":100},{"file":"test-properties.rkt","status":"pass","tests":13,"wall_ms":1436},{"cell_metrics":{"cells":25,"propagators":0},"file":"test-propagator-lvar.rkt","heartbeats":{"cell_allocs":737,"constraint_count":0,"constraint_retries":0,"elaborate_steps":180,"infer_steps":223,"meta_created":4,"meta_solved":4,"prop_allocs":0,"prop_firings":0,"reduce_steps":278,"resolution_cycles":4,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":136,"zonk_steps":224},"memory":{"gc_ms":77,"mem_after_bytes":180856208,"mem_before_bytes":180821880,"mem_retained_bytes":34328},"phases":{"elaborate_ms":74,"parse_ms":0,"qtt_ms":78,"reduce_ms":120,"trait_resolve_ms":0,"type_check_ms":205,"zonk_ms":1},"status":"pass","tests":8,"wall_ms":2200},{"cell_metrics":{"cells":25,"propagators":0},"file":"test-propagator-integration.rkt","heartbeats":{"cell_allocs":619,"constraint_count":0,"constraint_retries":0,"elaborate_steps":142,"infer_steps":150,"meta_created":0,"meta_solved":0,"prop_allocs":0,"prop_firings":0,"reduce_steps":153,"resolution_cycles":0,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":83,"zonk_steps":123},"memory":{"gc_ms":81,"mem_after_bytes":199301864,"mem_before_bytes":199257928,"mem_retained_bytes":43936},"phases":{"elaborate_ms":47,"parse_ms":0,"qtt_ms":37,"reduce_ms":27,"trait_resolve_ms":0,"type_check_ms":88,"zonk_ms":0},"status":"pass","tests":16,"wall_ms":3243},{"cell_metrics":{"cells":19,"propagators":0},"file":"test-prelude-system-02.rkt","heartbeats":{"cell_allocs":382,"constraint_count":0,"constraint_retries":0,"elaborate_steps":103,"infer_steps":156,"meta_created":0,"meta_solved":0,"prop_allocs":0,"prop_firings":0,"reduce_steps":267,"resolution_cycles":0,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":41,"zonk_steps":102},"memory":{"gc_ms":75,"mem_after_bytes":186535480,"mem_before_bytes":186536168,"mem_retained_bytes":0},"phases":{"elaborate_ms":28,"parse_ms":0,"qtt_ms":0,"reduce_ms":181,"trait_resolve_ms":0,"type_check_ms":173,"zonk_ms":1},"status":"pass","tests":16,"wall_ms":4451},{"file":"test-provenance-errors.rkt","status":"pass","tests":26,"wall_ms":3569},{"cell_metrics":{"cells":21,"propagators":0},"file":"test-pvec-ops-eval.rkt","heartbeats":{"cell_allocs":673,"constraint_count":0,"constraint_retries":0,"elaborate_steps":209,"infer_steps":241,"meta_created":4,"meta_solved":4,"prop_allocs":0,"prop_firings":0,"reduce_steps":147,"resolution_cycles":4,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":40,"zonk_steps":165},"memory":{"gc_ms":74,"mem_after_bytes":181020440,"mem_before_bytes":181024696,"mem_retained_bytes":0},"phases":{"elaborate_ms":86,"parse_ms":0,"qtt_ms":19,"reduce_ms":7,"trait_resolve_ms":0,"type_check_ms":195,"zonk_ms":0},"status":"pass","tests":13,"wall_ms":2872},{"file":"test-qtt.rkt","status":"pass","tests":27,"wall_ms":189},{"cell_metrics":{"cells":21,"propagators":3},"file":"test-prelude-system-01.rkt","heartbeats":{"cell_allocs":302,"constraint_count":0,"constraint_retries":0,"elaborate_steps":94,"infer_steps":222,"meta_created":21,"meta_solved":21,"prop_allocs":0,"prop_firings":0,"reduce_steps":785,"resolution_cycles":19,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":60,"zonk_steps":208},"memory":{"gc_ms":94,"mem_after_bytes":194324840,"mem_before_bytes":194298976,"mem_retained_bytes":25864},"phases":{"elaborate_ms":211,"parse_ms":0,"qtt_ms":0,"reduce_ms":2453,"trait_resolve_ms":0,"type_check_ms":469,"zonk_ms":0},"status":"pass","tests":15,"wall_ms":6450},{"cell_metrics":{"cells":25,"propagators":0},"file":"test-postfix-index-03.rkt","heartbeats":{"cell_allocs":606,"constraint_count":0,"constraint_retries":0,"elaborate_steps":168,"infer_steps":337,"meta_created":50,"meta_solved":50,"prop_allocs":0,"prop_firings":0,"reduce_steps":417,"resolution_cycles":50,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":150,"zonk_steps":446},"memory":{"gc_ms":92,"mem_after_bytes":204938472,"mem_before_bytes":203843384,"mem_retained_bytes":1095088},"phases":{"elaborate_ms":112,"parse_ms":0,"qtt_ms":231,"reduce_ms":78,"trait_resolve_ms":0,"type_check_ms":304,"zonk_ms":0},"status":"pass","tests":12,"wall_ms":10106},{"cell_metrics":{"cells":19,"propagators":0},"file":"test-pvec-traits.rkt","heartbeats":{"cell_allocs":452,"constraint_count":0,"constraint_retries":0,"elaborate_steps":119,"infer_steps":122,"meta_created":0,"meta_solved":0,"prop_allocs":0,"prop_firings":0,"reduce_steps":206,"resolution_cycles":0,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":28,"zonk_steps":218},"memory":{"gc_ms":81,"mem_after_bytes":199442168,"mem_before_bytes":199445592,"mem_retained_bytes":0},"phases":{"elaborate_ms":41,"parse_ms":0,"qtt_ms":0,"reduce_ms":172,"trait_resolve_ms":0,"type_check_ms":77,"zonk_ms":0},"status":"pass","tests":17,"wall_ms":4195},{"cell_metrics":{"cells":63,"propagators":0},"file":"test-property-ws.rkt","heartbeats":{"cell_allocs":8806,"constraint_count":0,"constraint_retries":0,"elaborate_steps":1892,"infer_steps":1483,"meta_created":66,"meta_solved":26,"prop_allocs":0,"prop_firings":0,"reduce_steps":1303,"resolution_cycles":26,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":900,"zonk_steps":1262},"memory":{"gc_ms":108,"mem_after_bytes":216935928,"mem_before_bytes":216967744,"mem_retained_bytes":0},"phases":{"elaborate_ms":907,"parse_ms":0,"qtt_ms":844,"reduce_ms":0,"trait_resolve_ms":0,"type_check_ms":2017,"zonk_ms":4},"status":"pass","tests":12,"wall_ms":6890},{"file":"test-reader-relational.rkt","status":"pass","tests":10,"wall_ms":102},{"file":"test-readiness-propagator.rkt","status":"pass","tests":21,"wall_ms":3},{"cell_metrics":{"cells":17,"propagators":0},"file":"test-qtt-pipeline.rkt","heartbeats":{"cell_allocs":470,"constraint_count":0,"constraint_retries":0,"elaborate_steps":155,"infer_steps":127,"meta_created":0,"meta_solved":0,"prop_allocs":0,"prop_firings":0,"reduce_steps":169,"resolution_cycles":0,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":77,"zonk_steps":160},"memory":{"gc_ms":65,"mem_after_bytes":165351512,"mem_before_bytes":165353976,"mem_retained_bytes":0},"phases":{"elaborate_ms":44,"parse_ms":0,"qtt_ms":57,"reduce_ms":58,"trait_resolve_ms":0,"type_check_ms":70,"zonk_ms":0},"status":"pass","tests":19,"wall_ms":3335},{"cell_metrics":{"cells":22,"propagators":0},"file":"test-pvec-fold.rkt","heartbeats":{"cell_allocs":299,"constraint_count":0,"constraint_retries":0,"elaborate_steps":188,"infer_steps":273,"meta_created":15,"meta_solved":15,"prop_allocs":0,"prop_firings":0,"reduce_steps":1296,"resolution_cycles":15,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":112,"zonk_steps":267},"memory":{"gc_ms":77,"mem_after_bytes":171922088,"mem_before_bytes":171961848,"mem_retained_bytes":0},"phases":{"elaborate_ms":116,"parse_ms":0,"qtt_ms":14,"reduce_ms":2988,"trait_resolve_ms":0,"type_check_ms":199,"zonk_ms":0},"status":"pass","tests":13,"wall_ms":5817},{"file":"test-reader.rkt","status":"pass","tests":70,"wall_ms":477},{"file":"test-reduction.rkt","status":"pass","tests":27,"wall_ms":204},{"cell_metrics":{"cells":20,"propagators":0},"file":"test-pvec.rkt","heartbeats":{"cell_allocs":496,"constraint_count":0,"constraint_retries":0,"elaborate_steps":180,"infer_steps":155,"meta_created":5,"meta_solved":4,"prop_allocs":0,"prop_firings":0,"reduce_steps":250,"resolution_cycles":4,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":18,"zonk_steps":188},"memory":{"gc_ms":82,"mem_after_bytes":187306088,"mem_before_bytes":187309312,"mem_retained_bytes":0},"phases":{"elaborate_ms":61,"parse_ms":0,"qtt_ms":7,"reduce_ms":79,"trait_resolve_ms":0,"type_check_ms":76,"zonk_ms":1},"status":"pass","tests":48,"wall_ms":4568},{"cell_metrics":{"cells":31,"propagators":0},"file":"test-pipe-compose-e2e-02b.rkt","heartbeats":{"cell_allocs":599,"constraint_count":0,"constraint_retries":0,"elaborate_steps":240,"infer_steps":373,"meta_created":15,"meta_solved":15,"prop_allocs":0,"prop_firings":0,"reduce_steps":944,"resolution_cycles":15,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":170,"zonk_steps":372},"memory":{"gc_ms":74,"mem_after_bytes":180897488,"mem_before_bytes":180894632,"mem_retained_bytes":2856},"phases":{"elaborate_ms":166,"parse_ms":0,"qtt_ms":189,"reduce_ms":7302,"trait_resolve_ms":0,"type_check_ms":469,"zonk_ms":0},"status":"pass","tests":8,"wall_ms":16867},{"cell_metrics":{"cells":17,"propagators":0},"file":"test-reduction-perf-01-01.rkt","heartbeats":{"cell_allocs":64,"constraint_count":0,"constraint_retries":0,"elaborate_steps":8,"infer_steps":10,"meta_created":0,"meta_solved":0,"prop_allocs":0,"prop_firings":0,"reduce_steps":12,"resolution_cycles":0,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":2,"zonk_steps":12},"memory":{"gc_ms":70,"mem_after_bytes":171938528,"mem_before_bytes":171936680,"mem_retained_bytes":1848},"phases":{"elaborate_ms":3,"parse_ms":0,"qtt_ms":0,"reduce_ms":7,"trait_resolve_ms":0,"type_check_ms":4,"zonk_ms":0},"status":"pass","tests":4,"wall_ms":727},{"cell_metrics":{"cells":18,"propagators":0},"file":"test-quire.rkt","heartbeats":{"cell_allocs":315,"constraint_count":0,"constraint_retries":0,"elaborate_steps":61,"infer_steps":77,"meta_created":0,"meta_solved":0,"prop_allocs":0,"prop_firings":0,"reduce_steps":57,"resolution_cycles":0,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":28,"zonk_steps":54},"memory":{"gc_ms":72,"mem_after_bytes":182024608,"mem_before_bytes":182028480,"mem_retained_bytes":0},"phases":{"elaborate_ms":21,"parse_ms":0,"qtt_ms":3,"reduce_ms":19,"trait_resolve_ms":0,"type_check_ms":28,"zonk_ms":0},"status":"pass","tests":31,"wall_ms":3331},{"file":"test-relational-types.rkt","status":"pass","tests":62,"wall_ms":505},{"file":"test-relations-runtime.rkt","status":"pass","tests":15,"wall_ms":106},{"cell_metrics":{"cells":25,"propagators":0},"file":"test-punify-integration.rkt","heartbeats":{"cell_allocs":725,"constraint_count":0,"constraint_retries":0,"elaborate_steps":138,"infer_steps":283,"meta_created":41,"meta_solved":39,"prop_allocs":0,"prop_firings":0,"reduce_steps":514,"resolution_cycles":38,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":97,"zonk_steps":303},"memory":{"gc_ms":72,"mem_after_bytes":171882104,"mem_before_bytes":171777472,"mem_retained_bytes":104632},"phases":{"elaborate_ms":213,"parse_ms":0,"qtt_ms":49,"reduce_ms":1021,"trait_resolve_ms":0,"type_check_ms":411,"zonk_ms":0},"status":"pass","tests":24,"wall_ms":8403},{"cell_metrics":{"cells":22,"propagators":0},"file":"test-quote.rkt","heartbeats":{"cell_allocs":421,"constraint_count":0,"constraint_retries":0,"elaborate_steps":85,"infer_steps":154,"meta_created":0,"meta_solved":0,"prop_allocs":0,"prop_firings":0,"reduce_steps":97,"resolution_cycles":0,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":31,"zonk_steps":63},"memory":{"gc_ms":83,"mem_after_bytes":195065352,"mem_before_bytes":195075648,"mem_retained_bytes":0},"phases":{"elaborate_ms":20,"parse_ms":0,"qtt_ms":2,"reduce_ms":28,"trait_resolve_ms":0,"type_check_ms":85,"zonk_ms":0},"status":"fail","tests":50,"wall_ms":4897},{"file":"test-retraction-stratum.rkt","status":"pass","tests":39,"wall_ms":329},{"cell_metrics":{"cells":18,"propagators":0},"file":"test-rat.rkt","heartbeats":{"cell_allocs":340,"constraint_count":0,"constraint_retries":0,"elaborate_steps":49,"infer_steps":48,"meta_created":0,"meta_solved":0,"prop_allocs":0,"prop_firings":0,"reduce_steps":50,"resolution_cycles":0,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":3,"zonk_steps":63},"memory":{"gc_ms":84,"mem_after_bytes":204156280,"mem_before_bytes":204155800,"mem_retained_bytes":480},"phases":{"elaborate_ms":9,"parse_ms":0,"qtt_ms":1,"reduce_ms":25,"trait_resolve_ms":0,"type_check_ms":17,"zonk_ms":1},"status":"pass","tests":31,"wall_ms":4178},{"cell_metrics":{"cells":51,"propagators":0},"file":"test-relational-e2e.rkt","heartbeats":{"cell_allocs":1192,"constraint_count":0,"constraint_retries":0,"elaborate_steps":213,"infer_steps":256,"meta_created":0,"meta_solved":0,"prop_allocs":0,"prop_firings":0,"reduce_steps":136,"resolution_cycles":0,"solver_backtracks":32,"solver_unifies":91,"trait_resolve_steps":0,"unify_steps":0,"zonk_steps":269},"memory":{"gc_ms":72,"mem_after_bytes":172508616,"mem_before_bytes":172508672,"mem_retained_bytes":0},"phases":{"elaborate_ms":82,"parse_ms":0,"qtt_ms":0,"reduce_ms":77,"trait_resolve_ms":0,"type_check_ms":89,"zonk_ms":0},"status":"pass","tests":15,"wall_ms":2982},{"cell_metrics":{"cells":23,"propagators":0},"file":"test-schema-registry.rkt","heartbeats":{"cell_allocs":60,"constraint_count":0,"constraint_retries":0,"elaborate_steps":3,"infer_steps":0,"meta_created":0,"meta_solved":0,"prop_allocs":0,"prop_firings":0,"reduce_steps":0,"resolution_cycles":0,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":0,"zonk_steps":3},"memory":{"gc_ms":91,"mem_after_bytes":204515848,"mem_before_bytes":204511880,"mem_retained_bytes":3968},"phases":{"elaborate_ms":0,"parse_ms":0,"qtt_ms":0,"reduce_ms":0,"trait_resolve_ms":0,"type_check_ms":0,"zonk_ms":0},"status":"pass","tests":12,"wall_ms":1408},{"cell_metrics":{"cells":41,"propagators":0},"file":"test-schema-e2e.rkt","heartbeats":{"cell_allocs":978,"constraint_count":0,"constraint_retries":0,"elaborate_steps":130,"infer_steps":135,"meta_created":22,"meta_solved":0,"prop_allocs":0,"prop_firings":0,"reduce_steps":44,"resolution_cycles":0,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":21,"zonk_steps":120},"memory":{"gc_ms":81,"mem_after_bytes":195338592,"mem_before_bytes":195278504,"mem_retained_bytes":60088},"phases":{"elaborate_ms":80,"parse_ms":0,"qtt_ms":24,"reduce_ms":0,"trait_resolve_ms":0,"type_check_ms":65,"zonk_ms":0},"status":"pass","tests":11,"wall_ms":3057},{"cell_metrics":{"cells":24,"propagators":0},"file":"test-reducible-01.rkt","heartbeats":{"cell_allocs":354,"constraint_count":0,"constraint_retries":0,"elaborate_steps":124,"infer_steps":244,"meta_created":14,"meta_solved":14,"prop_allocs":0,"prop_firings":0,"reduce_steps":702,"resolution_cycles":14,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":123,"zonk_steps":371},"memory":{"gc_ms":88,"mem_after_bytes":200128552,"mem_before_bytes":200188752,"mem_retained_bytes":0},"phases":{"elaborate_ms":124,"parse_ms":0,"qtt_ms":39,"reduce_ms":2444,"trait_resolve_ms":0,"type_check_ms":934,"zonk_ms":1},"status":"pass","tests":12,"wall_ms":6525},{"file":"test-selection-parsing.rkt","status":"pass","tests":13,"wall_ms":184},{"cell_metrics":{"cells":25,"propagators":0},"file":"test-schema-types.rkt","heartbeats":{"cell_allocs":548,"constraint_count":0,"constraint_retries":0,"elaborate_steps":99,"infer_steps":101,"meta_created":18,"meta_solved":0,"prop_allocs":0,"prop_firings":0,"reduce_steps":34,"resolution_cycles":0,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":15,"zonk_steps":76},"memory":{"gc_ms":74,"mem_after_bytes":172618672,"mem_before_bytes":172626472,"mem_retained_bytes":0},"phases":{"elaborate_ms":85,"parse_ms":0,"qtt_ms":19,"reduce_ms":0,"trait_resolve_ms":0,"type_check_ms":71,"zonk_ms":0},"status":"pass","tests":14,"wall_ms":3439},{"cell_metrics":{"cells":17,"propagators":0},"file":"test-resolution-confluence-01.rkt","heartbeats":{"cell_allocs":640,"constraint_count":0,"constraint_retries":0,"elaborate_steps":102,"infer_steps":155,"meta_created":0,"meta_solved":0,"prop_allocs":0,"prop_firings":0,"reduce_steps":1269,"resolution_cycles":0,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":11,"zonk_steps":164},"memory":{"gc_ms":90,"mem_after_bytes":183600656,"mem_before_bytes":183644952,"mem_retained_bytes":0},"phases":{"elaborate_ms":48,"parse_ms":0,"qtt_ms":0,"reduce_ms":2382,"trait_resolve_ms":0,"type_check_ms":143,"zonk_ms":0},"status":"pass","tests":19,"wall_ms":6960},{"cell_metrics":{"cells":17,"propagators":0},"file":"test-refined-rat.rkt","heartbeats":{"cell_allocs":288,"constraint_count":0,"constraint_retries":0,"elaborate_steps":98,"infer_steps":218,"meta_created":0,"meta_solved":0,"prop_allocs":0,"prop_firings":0,"reduce_steps":451,"resolution_cycles":0,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":50,"zonk_steps":196},"memory":{"gc_ms":81,"mem_after_bytes":189044160,"mem_before_bytes":188242000,"mem_retained_bytes":802160},"phases":{"elaborate_ms":41,"parse_ms":0,"qtt_ms":0,"reduce_ms":599,"trait_resolve_ms":0,"type_check_ms":292,"zonk_ms":0},"status":"pass","tests":18,"wall_ms":8624},{"cell_metrics":{"cells":64,"propagators":0},"file":"test-selection-compose.rkt","heartbeats":{"cell_allocs":1215,"constraint_count":0,"constraint_retries":0,"elaborate_steps":71,"infer_steps":62,"meta_created":4,"meta_solved":0,"prop_allocs":0,"prop_firings":0,"reduce_steps":32,"resolution_cycles":0,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":24,"zonk_steps":70},"memory":{"gc_ms":93,"mem_after_bytes":195593312,"mem_before_bytes":195595576,"mem_retained_bytes":0},"phases":{"elaborate_ms":41,"parse_ms":0,"qtt_ms":31,"reduce_ms":0,"trait_resolve_ms":0,"type_check_ms":49,"zonk_ms":0},"status":"pass","tests":12,"wall_ms":3786},{"cell_metrics":{"cells":37,"propagators":0},"file":"test-selection-registry.rkt","heartbeats":{"cell_allocs":578,"constraint_count":0,"constraint_retries":0,"elaborate_steps":10,"infer_steps":1,"meta_created":0,"meta_solved":0,"prop_allocs":0,"prop_firings":0,"reduce_steps":0,"resolution_cycles":0,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":0,"zonk_steps":10},"memory":{"gc_ms":84,"mem_after_bytes":172895056,"mem_before_bytes":172893296,"mem_retained_bytes":1760},"phases":{"elaborate_ms":1,"parse_ms":0,"qtt_ms":0,"reduce_ms":0,"trait_resolve_ms":0,"type_check_ms":0,"zonk_ms":0},"status":"pass","tests":10,"wall_ms":2444},{"file":"test-sess-inference.rkt","status":"pass","tests":29,"wall_ms":516},{"cell_metrics":{"cells":77,"propagators":0},"file":"test-schema-properties.rkt","heartbeats":{"cell_allocs":2454,"constraint_count":0,"constraint_retries":0,"elaborate_steps":349,"infer_steps":323,"meta_created":38,"meta_solved":10,"prop_allocs":0,"prop_firings":0,"reduce_steps":419,"resolution_cycles":10,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":83,"zonk_steps":404},"memory":{"gc_ms":86,"mem_after_bytes":172705648,"mem_before_bytes":172716984,"mem_retained_bytes":0},"phases":{"elaborate_ms":178,"parse_ms":0,"qtt_ms":220,"reduce_ms":240,"trait_resolve_ms":0,"type_check_ms":282,"zonk_ms":1},"status":"pass","tests":30,"wall_ms":7645},{"cell_metrics":{"cells":17,"propagators":0},"file":"test-refined-subtyping.rkt","heartbeats":{"cell_allocs":472,"constraint_count":0,"constraint_retries":0,"elaborate_steps":83,"infer_steps":115,"meta_created":0,"meta_solved":0,"prop_allocs":0,"prop_firings":0,"reduce_steps":189,"resolution_cycles":0,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":43,"zonk_steps":120},"memory":{"gc_ms":79,"mem_after_bytes":182087624,"mem_before_bytes":182117272,"mem_retained_bytes":0},"phases":{"elaborate_ms":46,"parse_ms":0,"qtt_ms":18,"reduce_ms":122,"trait_resolve_ms":0,"type_check_ms":115,"zonk_ms":0},"status":"pass","tests":18,"wall_ms":10539},{"cell_metrics":{"cells":25,"propagators":0},"file":"test-session-boundary-01.rkt","heartbeats":{"cell_allocs":296,"constraint_count":0,"constraint_retries":0,"elaborate_steps":12,"infer_steps":0,"meta_created":0,"meta_solved":0,"prop_allocs":0,"prop_firings":0,"reduce_steps":0,"resolution_cycles":0,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":0,"zonk_steps":0},"memory":{"gc_ms":80,"mem_after_bytes":173127960,"mem_before_bytes":173125784,"mem_retained_bytes":2176},"phases":{"elaborate_ms":4,"parse_ms":0,"qtt_ms":0,"reduce_ms":0,"trait_resolve_ms":0,"type_check_ms":0,"zonk_ms":0},"status":"pass","tests":13,"wall_ms":1091},{"cell_metrics":{"cells":21,"propagators":0},"file":"test-session-async-e2e.rkt","heartbeats":{"cell_allocs":954,"constraint_count":0,"constraint_retries":0,"elaborate_steps":96,"infer_steps":32,"meta_created":0,"meta_solved":0,"prop_allocs":0,"prop_firings":0,"reduce_steps":24,"resolution_cycles":0,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":0,"zonk_steps":0},"memory":{"gc_ms":79,"mem_after_bytes":173167088,"mem_before_bytes":173165208,"mem_retained_bytes":1880},"phases":{"elaborate_ms":63,"parse_ms":0,"qtt_ms":0,"reduce_ms":0,"trait_resolve_ms":0,"type_check_ms":14,"zonk_ms":0},"status":"pass","tests":8,"wall_ms":2027},{"cell_metrics":{"cells":24,"propagators":0},"file":"test-session-async-01.rkt","heartbeats":{"cell_allocs":225,"constraint_count":0,"constraint_retries":0,"elaborate_steps":13,"infer_steps":2,"meta_created":0,"meta_solved":0,"prop_allocs":0,"prop_firings":0,"reduce_steps":2,"resolution_cycles":0,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":0,"zonk_steps":0},"memory":{"gc_ms":87,"mem_after_bytes":196051920,"mem_before_bytes":196045296,"mem_retained_bytes":6624},"phases":{"elaborate_ms":6,"parse_ms":0,"qtt_ms":0,"reduce_ms":0,"trait_resolve_ms":0,"type_check_ms":2,"zonk_ms":0},"status":"pass","tests":21,"wall_ms":2271},{"cell_metrics":{"cells":24,"propagators":0},"file":"test-session-async-ws-01.rkt","heartbeats":{"cell_allocs":239,"constraint_count":0,"constraint_retries":0,"elaborate_steps":15,"infer_steps":2,"meta_created":0,"meta_solved":0,"prop_allocs":0,"prop_firings":0,"reduce_steps":2,"resolution_cycles":0,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":0,"zonk_steps":0},"memory":{"gc_ms":89,"mem_after_bytes":188313320,"mem_before_bytes":188314608,"mem_retained_bytes":0},"phases":{"elaborate_ms":8,"parse_ms":0,"qtt_ms":0,"reduce_ms":0,"trait_resolve_ms":0,"type_check_ms":4,"zonk_ms":0},"status":"pass","tests":9,"wall_ms":2283},{"file":"test-session-deadlock-01.rkt","status":"pass","tests":9,"wall_ms":409},{"cell_metrics":{"cells":33,"propagators":0},"file":"test-selection-typing.rkt","heartbeats":{"cell_allocs":746,"constraint_count":0,"constraint_retries":0,"elaborate_steps":121,"infer_steps":131,"meta_created":18,"meta_solved":0,"prop_allocs":0,"prop_firings":0,"reduce_steps":61,"resolution_cycles":0,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":27,"zonk_steps":118},"memory":{"gc_ms":90,"mem_after_bytes":183947944,"mem_before_bytes":183949096,"mem_retained_bytes":0},"phases":{"elaborate_ms":58,"parse_ms":0,"qtt_ms":43,"reduce_ms":0,"trait_resolve_ms":0,"type_check_ms":74,"zonk_ms":0},"status":"pass","tests":12,"wall_ms":3595},{"file":"test-session-errors-01.rkt","status":"pass","tests":10,"wall_ms":224},{"file":"test-session-lattice-01.rkt","status":"pass","tests":26,"wall_ms":339},{"file":"test-session-parse-01.rkt","status":"pass","tests":18,"wall_ms":432},{"file":"test-session-parse-02.rkt","status":"pass","tests":16,"wall_ms":287},{"cell_metrics":{"cells":22,"propagators":0},"file":"test-session-caps-01.rkt","heartbeats":{"cell_allocs":473,"constraint_count":0,"constraint_retries":0,"elaborate_steps":18,"infer_steps":4,"meta_created":0,"meta_solved":0,"prop_allocs":0,"prop_firings":0,"reduce_steps":4,"resolution_cycles":0,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":0,"zonk_steps":0},"memory":{"gc_ms":85,"mem_after_bytes":181230312,"mem_before_bytes":181233528,"mem_retained_bytes":0},"phases":{"elaborate_ms":6,"parse_ms":0,"qtt_ms":0,"reduce_ms":0,"trait_resolve_ms":0,"type_check_ms":2,"zonk_ms":0},"status":"pass","tests":12,"wall_ms":1649},{"cell_metrics":{"cells":23,"propagators":0},"file":"test-session-e2e-ws.rkt","heartbeats":{"cell_allocs":329,"constraint_count":0,"constraint_retries":0,"elaborate_steps":22,"infer_steps":6,"meta_created":0,"meta_solved":0,"prop_allocs":0,"prop_firings":0,"reduce_steps":6,"resolution_cycles":0,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":0,"zonk_steps":0},"memory":{"gc_ms":89,"mem_after_bytes":196242224,"mem_before_bytes":196239672,"mem_retained_bytes":2552},"phases":{"elaborate_ms":10,"parse_ms":0,"qtt_ms":0,"reduce_ms":0,"trait_resolve_ms":0,"type_check_ms":7,"zonk_ms":0},"status":"pass","tests":4,"wall_ms":1091},{"file":"test-session-propagators-01.rkt","status":"pass","tests":20,"wall_ms":225},{"cell_metrics":{"cells":23,"propagators":0},"file":"test-session-caps-02.rkt","heartbeats":{"cell_allocs":487,"constraint_count":0,"constraint_retries":0,"elaborate_steps":20,"infer_steps":4,"meta_created":0,"meta_solved":0,"prop_allocs":0,"prop_firings":0,"reduce_steps":4,"resolution_cycles":0,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":0,"zonk_steps":0},"memory":{"gc_ms":75,"mem_after_bytes":173229264,"mem_before_bytes":173228824,"mem_retained_bytes":440},"phases":{"elaborate_ms":13,"parse_ms":0,"qtt_ms":0,"reduce_ms":0,"trait_resolve_ms":0,"type_check_ms":3,"zonk_ms":0},"status":"pass","tests":6,"wall_ms":1477},{"file":"test-session-runtime-01.rkt","status":"pass","tests":20,"wall_ms":280},{"file":"test-session-runtime-02.rkt","status":"pass","tests":19,"wall_ms":279},{"file":"test-session-type-bridge-01.rkt","status":"pass","tests":25,"wall_ms":618},{"file":"test-sessions.rkt","status":"pass","tests":13,"wall_ms":81},{"cell_metrics":{"cells":17,"propagators":0},"file":"test-refined-int.rkt","heartbeats":{"cell_allocs":476,"constraint_count":0,"constraint_retries":0,"elaborate_steps":129,"infer_steps":274,"meta_created":0,"meta_solved":0,"prop_allocs":0,"prop_firings":0,"reduce_steps":520,"resolution_cycles":0,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":67,"zonk_steps":248},"memory":{"gc_ms":90,"mem_after_bytes":218267320,"mem_before_bytes":217420344,"mem_retained_bytes":846976},"phases":{"elaborate_ms":184,"parse_ms":0,"qtt_ms":7,"reduce_ms":672,"trait_resolve_ms":0,"type_check_ms":401,"zonk_ms":0},"status":"pass","tests":26,"wall_ms":13505},{"cell_metrics":{"cells":14,"propagators":0},"file":"test-search-heuristics-01.rkt","heartbeats":{"cell_allocs":0,"constraint_count":0,"constraint_retries":0,"elaborate_steps":0,"infer_steps":0,"meta_created":0,"meta_solved":0,"prop_allocs":0,"prop_firings":0,"reduce_steps":0,"resolution_cycles":0,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":0,"zonk_steps":0},"memory":{"gc_ms":97,"mem_after_bytes":223891496,"mem_before_bytes":222735560,"mem_retained_bytes":1155936},"phases":{"elaborate_ms":0,"parse_ms":0,"qtt_ms":0,"reduce_ms":0,"trait_resolve_ms":0,"type_check_ms":0,"zonk_ms":0},"status":"pass","tests":41,"wall_ms":9050},{"cell_metrics":{"cells":19,"propagators":0},"file":"test-session-throws-01.rkt","heartbeats":{"cell_allocs":174,"constraint_count":0,"constraint_retries":0,"elaborate_steps":19,"infer_steps":0,"meta_created":0,"meta_solved":0,"prop_allocs":0,"prop_firings":0,"reduce_steps":0,"resolution_cycles":0,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":0,"zonk_steps":0},"memory":{"gc_ms":76,"mem_after_bytes":173454624,"mem_before_bytes":173453552,"mem_retained_bytes":1072},"phases":{"elaborate_ms":4,"parse_ms":0,"qtt_ms":0,"reduce_ms":0,"trait_resolve_ms":0,"type_check_ms":0,"zonk_ms":0},"status":"pass","tests":10,"wall_ms":1745},{"cell_metrics":{"cells":25,"propagators":0},"file":"test-session-runtime-04.rkt","heartbeats":{"cell_allocs":860,"constraint_count":0,"constraint_retries":0,"elaborate_steps":28,"infer_steps":9,"meta_created":0,"meta_solved":0,"prop_allocs":0,"prop_firings":0,"reduce_steps":9,"resolution_cycles":0,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":0,"zonk_steps":0},"memory":{"gc_ms":73,"mem_after_bytes":174802840,"mem_before_bytes":174802568,"mem_retained_bytes":272},"phases":{"elaborate_ms":8,"parse_ms":0,"qtt_ms":0,"reduce_ms":0,"trait_resolve_ms":0,"type_check_ms":5,"zonk_ms":0},"status":"pass","tests":11,"wall_ms":1958},{"file":"test-solver-config.rkt","status":"pass","tests":13,"wall_ms":187},{"file":"test-solver-occurs.rkt","status":"pass","tests":30,"wall_ms":210},{"cell_metrics":{"cells":95,"propagators":0},"file":"test-selection-paths.rkt","heartbeats":{"cell_allocs":2856,"constraint_count":0,"constraint_retries":0,"elaborate_steps":243,"infer_steps":264,"meta_created":8,"meta_solved":0,"prop_allocs":0,"prop_firings":0,"reduce_steps":116,"resolution_cycles":0,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":58,"zonk_steps":184},"memory":{"gc_ms":82,"mem_after_bytes":201389656,"mem_before_bytes":201380184,"mem_retained_bytes":9472},"phases":{"elaborate_ms":127,"parse_ms":0,"qtt_ms":119,"reduce_ms":0,"trait_resolve_ms":0,"type_check_ms":174,"zonk_ms":0},"status":"pass","tests":56,"wall_ms":8925},{"cell_metrics":{"cells":27,"propagators":0},"file":"test-session-ws-01.rkt","heartbeats":{"cell_allocs":283,"constraint_count":0,"constraint_retries":0,"elaborate_steps":17,"infer_steps":0,"meta_created":0,"meta_solved":0,"prop_allocs":0,"prop_firings":0,"reduce_steps":0,"resolution_cycles":0,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":0,"zonk_steps":0},"memory":{"gc_ms":76,"mem_after_bytes":181949416,"mem_before_bytes":181948448,"mem_retained_bytes":968},"phases":{"elaborate_ms":5,"parse_ms":0,"qtt_ms":0,"reduce_ms":0,"trait_resolve_ms":0,"type_check_ms":0,"zonk_ms":0},"status":"pass","tests":13,"wall_ms":2393},{"cell_metrics":{"cells":31,"propagators":0},"file":"test-session-elaborate-01.rkt","heartbeats":{"cell_allocs":645,"constraint_count":0,"constraint_retries":0,"elaborate_steps":32,"infer_steps":4,"meta_created":0,"meta_solved":0,"prop_allocs":0,"prop_firings":0,"reduce_steps":4,"resolution_cycles":0,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":0,"zonk_steps":0},"memory":{"gc_ms":80,"mem_after_bytes":188696824,"mem_before_bytes":188697520,"mem_retained_bytes":0},"phases":{"elaborate_ms":11,"parse_ms":0,"qtt_ms":0,"reduce_ms":0,"trait_resolve_ms":0,"type_check_ms":4,"zonk_ms":0},"status":"pass","tests":19,"wall_ms":3827},{"cell_metrics":{"cells":37,"propagators":0},"file":"test-session-runtime-03.rkt","heartbeats":{"cell_allocs":1341,"constraint_count":0,"constraint_retries":0,"elaborate_steps":44,"infer_steps":11,"meta_created":0,"meta_solved":0,"prop_allocs":0,"prop_firings":0,"reduce_steps":11,"resolution_cycles":0,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":0,"zonk_steps":0},"memory":{"gc_ms":81,"mem_after_bytes":196567488,"mem_before_bytes":196586920,"mem_retained_bytes":0},"phases":{"elaborate_ms":11,"parse_ms":0,"qtt_ms":0,"reduce_ms":0,"trait_resolve_ms":0,"type_check_ms":6,"zonk_ms":0},"status":"pass","tests":17,"wall_ms":3538},{"cell_metrics":{"cells":27,"propagators":0},"file":"test-sexp-reader-parity.rkt","heartbeats":{"cell_allocs":231,"constraint_count":0,"constraint_retries":0,"elaborate_steps":89,"infer_steps":147,"meta_created":13,"meta_solved":13,"prop_allocs":0,"prop_firings":0,"reduce_steps":232,"resolution_cycles":13,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":64,"zonk_steps":190},"memory":{"gc_ms":99,"mem_after_bytes":223015936,"mem_before_bytes":223087104,"mem_retained_bytes":0},"phases":{"elaborate_ms":61,"parse_ms":0,"qtt_ms":31,"reduce_ms":194,"trait_resolve_ms":0,"type_check_ms":164,"zonk_ms":0},"status":"pass","tests":21,"wall_ms":2458},{"cell_metrics":{"cells":41,"propagators":0},"file":"test-specialization.rkt","heartbeats":{"cell_allocs":366,"constraint_count":0,"constraint_retries":0,"elaborate_steps":54,"infer_steps":43,"meta_created":2,"meta_solved":1,"prop_allocs":0,"prop_firings":0,"reduce_steps":55,"resolution_cycles":1,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":30,"zonk_steps":62},"memory":{"gc_ms":79,"mem_after_bytes":188999776,"mem_before_bytes":188931360,"mem_retained_bytes":68416},"phases":{"elaborate_ms":22,"parse_ms":0,"qtt_ms":20,"reduce_ms":18,"trait_resolve_ms":0,"type_check_ms":32,"zonk_ms":0},"status":"pass","tests":9,"wall_ms":921},{"cell_metrics":{"cells":21,"propagators":0},"file":"test-set-ops-eval.rkt","heartbeats":{"cell_allocs":679,"constraint_count":0,"constraint_retries":0,"elaborate_steps":207,"infer_steps":262,"meta_created":10,"meta_solved":10,"prop_allocs":0,"prop_firings":0,"reduce_steps":166,"resolution_cycles":10,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":46,"zonk_steps":169},"memory":{"gc_ms":76,"mem_after_bytes":188393032,"mem_before_bytes":188396848,"mem_retained_bytes":0},"phases":{"elaborate_ms":137,"parse_ms":0,"qtt_ms":7,"reduce_ms":8,"trait_resolve_ms":0,"type_check_ms":229,"zonk_ms":0},"status":"pass","tests":13,"wall_ms":3180},{"file":"test-sre-core.rkt","status":"pass","tests":15,"wall_ms":217},{"file":"test-sre-duality.rkt","status":"pass","tests":17,"wall_ms":205},{"file":"test-sre-subtype.rkt","status":"pass","tests":26,"wall_ms":179},{"cell_metrics":{"cells":29,"propagators":0},"file":"test-spec-ordering.rkt","heartbeats":{"cell_allocs":629,"constraint_count":0,"constraint_retries":0,"elaborate_steps":215,"infer_steps":152,"meta_created":0,"meta_solved":0,"prop_allocs":0,"prop_firings":0,"reduce_steps":230,"resolution_cycles":0,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":108,"zonk_steps":234},"memory":{"gc_ms":81,"mem_after_bytes":201550688,"mem_before_bytes":201504688,"mem_retained_bytes":46000},"phases":{"elaborate_ms":76,"parse_ms":0,"qtt_ms":85,"reduce_ms":107,"trait_resolve_ms":0,"type_check_ms":138,"zonk_ms":0},"status":"pass","tests":10,"wall_ms":2549},{"cell_metrics":{"cells":37,"propagators":0},"file":"test-spec-mult-01.rkt","heartbeats":{"cell_allocs":438,"constraint_count":0,"constraint_retries":0,"elaborate_steps":112,"infer_steps":83,"meta_created":1,"meta_solved":1,"prop_allocs":0,"prop_firings":0,"reduce_steps":135,"resolution_cycles":1,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":43,"zonk_steps":122},"memory":{"gc_ms":73,"mem_after_bytes":175745048,"mem_before_bytes":175684792,"mem_retained_bytes":60256},"phases":{"elaborate_ms":42,"parse_ms":0,"qtt_ms":12,"reduce_ms":97,"trait_resolve_ms":0,"type_check_ms":72,"zonk_ms":0},"status":"pass","tests":13,"wall_ms":3100},{"cell_metrics":{"cells":19,"propagators":0},"file":"test-set.rkt","heartbeats":{"cell_allocs":416,"constraint_count":0,"constraint_retries":0,"elaborate_steps":155,"infer_steps":125,"meta_created":4,"meta_solved":3,"prop_allocs":0,"prop_firings":0,"reduce_steps":176,"resolution_cycles":3,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":14,"zonk_steps":161},"memory":{"gc_ms":96,"mem_after_bytes":217317408,"mem_before_bytes":217326672,"mem_retained_bytes":0},"phases":{"elaborate_ms":70,"parse_ms":0,"qtt_ms":4,"reduce_ms":69,"trait_resolve_ms":0,"type_check_ms":57,"zonk_ms":0},"status":"pass","tests":48,"wall_ms":4654},{"cell_metrics":{"cells":29,"propagators":0},"file":"test-spec.rkt","heartbeats":{"cell_allocs":960,"constraint_count":0,"constraint_retries":0,"elaborate_steps":351,"infer_steps":228,"meta_created":1,"meta_solved":1,"prop_allocs":0,"prop_firings":0,"reduce_steps":363,"resolution_cycles":1,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":166,"zonk_steps":376},"memory":{"gc_ms":72,"mem_after_bytes":182497696,"mem_before_bytes":182500120,"mem_retained_bytes":0},"phases":{"elaborate_ms":126,"parse_ms":0,"qtt_ms":141,"reduce_ms":148,"trait_resolve_ms":0,"type_check_ms":236,"zonk_ms":0},"status":"pass","tests":33,"wall_ms":4346},{"cell_metrics":{"cells":27,"propagators":3},"file":"test-reducible-02.rkt","heartbeats":{"cell_allocs":621,"constraint_count":0,"constraint_retries":0,"elaborate_steps":216,"infer_steps":560,"meta_created":89,"meta_solved":89,"prop_allocs":0,"prop_firings":0,"reduce_steps":1894,"resolution_cycles":87,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":193,"zonk_steps":690},"memory":{"gc_ms":73,"mem_after_bytes":165522952,"mem_before_bytes":165517912,"mem_retained_bytes":5040},"phases":{"elaborate_ms":741,"parse_ms":0,"qtt_ms":4,"reduce_ms":15415,"trait_resolve_ms":0,"type_check_ms":1318,"zonk_ms":0},"status":"pass","tests":14,"wall_ms":20226},{"file":"test-speculation-bridge.rkt","status":"pass","tests":27,"wall_ms":4263},{"cell_metrics":{"cells":19,"propagators":0},"file":"test-sign-galois.rkt","heartbeats":{"cell_allocs":350,"constraint_count":0,"constraint_retries":0,"elaborate_steps":81,"infer_steps":293,"meta_created":46,"meta_solved":46,"prop_allocs":0,"prop_firings":0,"reduce_steps":992,"resolution_cycles":46,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":150,"zonk_steps":392},"memory":{"gc_ms":76,"mem_after_bytes":174667976,"mem_before_bytes":174456296,"mem_retained_bytes":211680},"phases":{"elaborate_ms":282,"parse_ms":0,"qtt_ms":0,"reduce_ms":1311,"trait_resolve_ms":0,"type_check_ms":727,"zonk_ms":0},"status":"pass","tests":19,"wall_ms":7845},{"cell_metrics":{"cells":17,"propagators":0},"file":"test-stdlib-01-data-01.rkt","heartbeats":{"cell_allocs":528,"constraint_count":0,"constraint_retries":0,"elaborate_steps":124,"infer_steps":175,"meta_created":0,"meta_solved":0,"prop_allocs":0,"prop_firings":0,"reduce_steps":509,"resolution_cycles":0,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":34,"zonk_steps":168},"memory":{"gc_ms":78,"mem_after_bytes":189127288,"mem_before_bytes":189158664,"mem_retained_bytes":0},"phases":{"elaborate_ms":35,"parse_ms":0,"qtt_ms":0,"reduce_ms":490,"trait_resolve_ms":0,"type_check_ms":147,"zonk_ms":0},"status":"pass","tests":14,"wall_ms":7026},{"cell_metrics":{"cells":50,"propagators":0},"file":"test-stdlib-02-traits-01.rkt","heartbeats":{"cell_allocs":1550,"constraint_count":0,"constraint_retries":0,"elaborate_steps":334,"infer_steps":432,"meta_created":0,"meta_solved":0,"prop_allocs":0,"prop_firings":0,"reduce_steps":510,"resolution_cycles":0,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":94,"zonk_steps":401},"memory":{"gc_ms":91,"mem_after_bytes":217721368,"mem_before_bytes":217740048,"mem_retained_bytes":0},"phases":{"elaborate_ms":105,"parse_ms":0,"qtt_ms":0,"reduce_ms":286,"trait_resolve_ms":0,"type_check_ms":364,"zonk_ms":0},"status":"pass","tests":19,"wall_ms":6547},{"cell_metrics":{"cells":45,"propagators":0},"file":"test-sprint10.rkt","heartbeats":{"cell_allocs":1495,"constraint_count":0,"constraint_retries":0,"elaborate_steps":369,"infer_steps":337,"meta_created":11,"meta_solved":10,"prop_allocs":0,"prop_firings":0,"reduce_steps":492,"resolution_cycles":10,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":139,"zonk_steps":389},"memory":{"gc_ms":95,"mem_after_bytes":223589920,"mem_before_bytes":223544648,"mem_retained_bytes":45272},"phases":{"elaborate_ms":121,"parse_ms":0,"qtt_ms":78,"reduce_ms":266,"trait_resolve_ms":0,"type_check_ms":237,"zonk_ms":0},"status":"pass","tests":35,"wall_ms":8745},{"cell_metrics":{"cells":21,"propagators":0},"file":"test-stdlib-01-data-02.rkt","heartbeats":{"cell_allocs":799,"constraint_count":0,"constraint_retries":0,"elaborate_steps":266,"infer_steps":250,"meta_created":8,"meta_solved":8,"prop_allocs":0,"prop_firings":0,"reduce_steps":1456,"resolution_cycles":8,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":34,"zonk_steps":276},"memory":{"gc_ms":81,"mem_after_bytes":190187440,"mem_before_bytes":190185160,"mem_retained_bytes":2280},"phases":{"elaborate_ms":111,"parse_ms":0,"qtt_ms":4,"reduce_ms":1599,"trait_resolve_ms":0,"type_check_ms":214,"zonk_ms":0},"status":"pass","tests":14,"wall_ms":8322},{"cell_metrics":{"cells":17,"propagators":0},"file":"test-stdlib-02-traits-02.rkt","heartbeats":{"cell_allocs":310,"constraint_count":0,"constraint_retries":0,"elaborate_steps":351,"infer_steps":550,"meta_created":0,"meta_solved":0,"prop_allocs":0,"prop_firings":0,"reduce_steps":818,"resolution_cycles":0,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":157,"zonk_steps":416},"memory":{"gc_ms":79,"mem_after_bytes":182789464,"mem_before_bytes":182798728,"mem_retained_bytes":0},"phases":{"elaborate_ms":123,"parse_ms":0,"qtt_ms":0,"reduce_ms":1405,"trait_resolve_ms":0,"type_check_ms":873,"zonk_ms":0},"status":"pass","tests":19,"wall_ms":6135},{"cell_metrics":{"cells":17,"propagators":0},"file":"test-stdlib-02-traits-04.rkt","heartbeats":{"cell_allocs":304,"constraint_count":0,"constraint_retries":0,"elaborate_steps":200,"infer_steps":172,"meta_created":0,"meta_solved":0,"prop_allocs":0,"prop_firings":0,"reduce_steps":1185,"resolution_cycles":0,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":27,"zonk_steps":158},"memory":{"gc_ms":86,"mem_after_bytes":197646968,"mem_before_bytes":197706936,"mem_retained_bytes":0},"phases":{"elaborate_ms":63,"parse_ms":0,"qtt_ms":0,"reduce_ms":1228,"trait_resolve_ms":0,"type_check_ms":195,"zonk_ms":0},"status":"pass","tests":19,"wall_ms":5454},{"cell_metrics":{"cells":50,"propagators":0},"file":"test-stdlib-02-traits-03.rkt","heartbeats":{"cell_allocs":1890,"constraint_count":0,"constraint_retries":0,"elaborate_steps":425,"infer_steps":719,"meta_created":0,"meta_solved":0,"prop_allocs":0,"prop_firings":0,"reduce_steps":1144,"resolution_cycles":0,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":198,"zonk_steps":543},"memory":{"gc_ms":72,"mem_after_bytes":165907384,"mem_before_bytes":165900600,"mem_retained_bytes":6784},"phases":{"elaborate_ms":154,"parse_ms":0,"qtt_ms":39,"reduce_ms":1982,"trait_resolve_ms":0,"type_check_ms":735,"zonk_ms":0},"status":"pass","tests":19,"wall_ms":6958},{"cell_metrics":{"cells":18,"propagators":0},"file":"test-stdlib-01-data-03.rkt","heartbeats":{"cell_allocs":580,"constraint_count":0,"constraint_retries":0,"elaborate_steps":225,"infer_steps":260,"meta_created":0,"meta_solved":0,"prop_allocs":0,"prop_firings":0,"reduce_steps":1114,"resolution_cycles":0,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":60,"zonk_steps":232},"memory":{"gc_ms":83,"mem_after_bytes":202033768,"mem_before_bytes":202009104,"mem_retained_bytes":24664},"phases":{"elaborate_ms":65,"parse_ms":0,"qtt_ms":0,"reduce_ms":1279,"trait_resolve_ms":0,"type_check_ms":271,"zonk_ms":0},"status":"pass","tests":14,"wall_ms":9199},{"cell_metrics":{"cells":41,"propagators":0},"file":"test-stdlib-01-data-04.rkt","heartbeats":{"cell_allocs":1326,"constraint_count":0,"constraint_retries":0,"elaborate_steps":527,"infer_steps":744,"meta_created":0,"meta_solved":0,"prop_allocs":0,"prop_firings":0,"reduce_steps":1062,"resolution_cycles":0,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":198,"zonk_steps":554},"memory":{"gc_ms":71,"mem_after_bytes":176475384,"mem_before_bytes":176421064,"mem_retained_bytes":54320},"phases":{"elaborate_ms":179,"parse_ms":0,"qtt_ms":0,"reduce_ms":1237,"trait_resolve_ms":0,"type_check_ms":971,"zonk_ms":0},"status":"pass","tests":23,"wall_ms":10548},{"cell_metrics":{"cells":17,"propagators":0},"file":"test-stdlib-02-traits-05.rkt","heartbeats":{"cell_allocs":320,"constraint_count":0,"constraint_retries":0,"elaborate_steps":273,"infer_steps":336,"meta_created":0,"meta_solved":0,"prop_allocs":0,"prop_firings":0,"reduce_steps":2023,"resolution_cycles":0,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":74,"zonk_steps":282},"memory":{"gc_ms":78,"mem_after_bytes":173956512,"mem_before_bytes":173985368,"mem_retained_bytes":0},"phases":{"elaborate_ms":91,"parse_ms":0,"qtt_ms":0,"reduce_ms":2428,"trait_resolve_ms":0,"type_check_ms":393,"zonk_ms":0},"status":"pass","tests":16,"wall_ms":6592},{"cell_metrics":{"cells":17,"propagators":0},"file":"test-strategy-01.rkt","heartbeats":{"cell_allocs":96,"constraint_count":0,"constraint_retries":0,"elaborate_steps":0,"infer_steps":0,"meta_created":0,"meta_solved":0,"prop_allocs":0,"prop_firings":0,"reduce_steps":0,"resolution_cycles":0,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":0,"zonk_steps":0},"memory":{"gc_ms":78,"mem_after_bytes":176587264,"mem_before_bytes":176587728,"mem_retained_bytes":0},"phases":{"elaborate_ms":0,"parse_ms":0,"qtt_ms":0,"reduce_ms":0,"trait_resolve_ms":0,"type_check_ms":0,"zonk_ms":0},"status":"pass","tests":14,"wall_ms":1016},{"cell_metrics":{"cells":30,"propagators":0},"file":"test-stdlib-02-traits-06.rkt","heartbeats":{"cell_allocs":606,"constraint_count":0,"constraint_retries":0,"elaborate_steps":312,"infer_steps":390,"meta_created":0,"meta_solved":0,"prop_allocs":0,"prop_firings":0,"reduce_steps":1011,"resolution_cycles":0,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":146,"zonk_steps":327},"memory":{"gc_ms":98,"mem_after_bytes":189398376,"mem_before_bytes":189406648,"mem_retained_bytes":0},"phases":{"elaborate_ms":94,"parse_ms":0,"qtt_ms":57,"reduce_ms":1686,"trait_resolve_ms":0,"type_check_ms":371,"zonk_ms":0},"status":"pass","tests":19,"wall_ms":6062},{"cell_metrics":{"cells":17,"propagators":0},"file":"test-strategy-ws-01.rkt","heartbeats":{"cell_allocs":112,"constraint_count":0,"constraint_retries":0,"elaborate_steps":0,"infer_steps":0,"meta_created":0,"meta_solved":0,"prop_allocs":0,"prop_firings":0,"reduce_steps":0,"resolution_cycles":0,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":0,"zonk_steps":0},"memory":{"gc_ms":78,"mem_after_bytes":174014152,"mem_before_bytes":174012720,"mem_retained_bytes":1432},"phases":{"elaborate_ms":0,"parse_ms":0,"qtt_ms":0,"reduce_ms":0,"trait_resolve_ms":0,"type_check_ms":0,"zonk_ms":0},"status":"pass","tests":7,"wall_ms":1111},{"file":"test-stratify.rkt","status":"pass","tests":10,"wall_ms":69},{"file":"test-structural-decomp.rkt","status":"pass","tests":43,"wall_ms":267},{"file":"test-substitution.rkt","status":"pass","tests":38,"wall_ms":196},{"cell_metrics":{"cells":29,"propagators":0},"file":"test-stratified-eval.rkt","heartbeats":{"cell_allocs":258,"constraint_count":0,"constraint_retries":0,"elaborate_steps":71,"infer_steps":87,"meta_created":0,"meta_solved":0,"prop_allocs":0,"prop_firings":0,"reduce_steps":46,"resolution_cycles":0,"solver_backtracks":16,"solver_unifies":47,"trait_resolve_steps":0,"unify_steps":0,"zonk_steps":89},"memory":{"gc_ms":70,"mem_after_bytes":177106864,"mem_before_bytes":177050312,"mem_retained_bytes":56552},"phases":{"elaborate_ms":22,"parse_ms":0,"qtt_ms":0,"reduce_ms":25,"trait_resolve_ms":0,"type_check_ms":24,"zonk_ms":0},"status":"pass","tests":18,"wall_ms":938},{"file":"test-support.rkt","status":"pass","tests":0,"wall_ms":0},{"cell_metrics":{"cells":17,"propagators":0},"file":"test-stdlib-03-list-01.rkt","heartbeats":{"cell_allocs":288,"constraint_count":0,"constraint_retries":0,"elaborate_steps":226,"infer_steps":474,"meta_created":0,"meta_solved":0,"prop_allocs":0,"prop_firings":0,"reduce_steps":1021,"resolution_cycles":0,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":132,"zonk_steps":360},"memory":{"gc_ms":94,"mem_after_bytes":223759680,"mem_before_bytes":223757208,"mem_retained_bytes":2472},"phases":{"elaborate_ms":80,"parse_ms":0,"qtt_ms":0,"reduce_ms":1677,"trait_resolve_ms":0,"type_check_ms":497,"zonk_ms":0},"status":"pass","tests":18,"wall_ms":6212},{"cell_metrics":{"cells":47,"propagators":0},"file":"test-stdlib-03-list-05.rkt","heartbeats":{"cell_allocs":700,"constraint_count":0,"constraint_retries":0,"elaborate_steps":135,"infer_steps":135,"meta_created":0,"meta_solved":0,"prop_allocs":0,"prop_firings":0,"reduce_steps":526,"resolution_cycles":0,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":46,"zonk_steps":132},"memory":{"gc_ms":83,"mem_after_bytes":202263096,"mem_before_bytes":202273208,"mem_retained_bytes":0},"phases":{"elaborate_ms":33,"parse_ms":0,"qtt_ms":9,"reduce_ms":1213,"trait_resolve_ms":0,"type_check_ms":111,"zonk_ms":0},"status":"pass","tests":15,"wall_ms":4680},{"cell_metrics":{"cells":17,"propagators":0},"file":"test-stdlib-03-list-04-01.rkt","heartbeats":{"cell_allocs":160,"constraint_count":0,"constraint_retries":0,"elaborate_steps":234,"infer_steps":402,"meta_created":0,"meta_solved":0,"prop_allocs":0,"prop_firings":0,"reduce_steps":978,"resolution_cycles":0,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":102,"zonk_steps":310},"memory":{"gc_ms":94,"mem_after_bytes":197818696,"mem_before_bytes":197834280,"mem_retained_bytes":0},"phases":{"elaborate_ms":69,"parse_ms":0,"qtt_ms":0,"reduce_ms":3497,"trait_resolve_ms":0,"type_check_ms":463,"zonk_ms":0},"status":"pass","tests":10,"wall_ms":6120},{"cell_metrics":{"cells":17,"propagators":0},"file":"test-stdlib-03-list-02.rkt","heartbeats":{"cell_allocs":290,"constraint_count":0,"constraint_retries":0,"elaborate_steps":287,"infer_steps":529,"meta_created":0,"meta_solved":0,"prop_allocs":0,"prop_firings":0,"reduce_steps":1399,"resolution_cycles":0,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":145,"zonk_steps":406},"memory":{"gc_ms":87,"mem_after_bytes":190421568,"mem_before_bytes":190398600,"mem_retained_bytes":22968},"phases":{"elaborate_ms":90,"parse_ms":0,"qtt_ms":0,"reduce_ms":3435,"trait_resolve_ms":0,"type_check_ms":532,"zonk_ms":1},"status":"pass","tests":18,"wall_ms":7543},{"cell_metrics":{"cells":25,"propagators":0},"file":"test-subtyping.rkt","heartbeats":{"cell_allocs":374,"constraint_count":0,"constraint_retries":0,"elaborate_steps":44,"infer_steps":34,"meta_created":0,"meta_solved":0,"prop_allocs":0,"prop_firings":0,"reduce_steps":48,"resolution_cycles":0,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":15,"zonk_steps":36},"memory":{"gc_ms":88,"mem_after_bytes":191618784,"mem_before_bytes":191619704,"mem_retained_bytes":0},"phases":{"elaborate_ms":12,"parse_ms":0,"qtt_ms":2,"reduce_ms":13,"trait_resolve_ms":0,"type_check_ms":24,"zonk_ms":0},"status":"pass","tests":44,"wall_ms":2396},{"file":"test-syntax.rkt","status":"pass","tests":20,"wall_ms":194},{"file":"test-tabling-types.rkt","status":"pass","tests":31,"wall_ms":221},{"cell_metrics":{"cells":25,"propagators":0},"file":"test-syntax-verify.rkt","heartbeats":{"cell_allocs":148,"constraint_count":0,"constraint_retries":0,"elaborate_steps":35,"infer_steps":73,"meta_created":11,"meta_solved":11,"prop_allocs":0,"prop_firings":0,"reduce_steps":103,"resolution_cycles":11,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":22,"zonk_steps":104},"memory":{"gc_ms":86,"mem_after_bytes":197948648,"mem_before_bytes":197963976,"mem_retained_bytes":0},"phases":{"elaborate_ms":33,"parse_ms":0,"qtt_ms":0,"reduce_ms":28,"trait_resolve_ms":0,"type_check_ms":83,"zonk_ms":0},"status":"pass","tests":5,"wall_ms":1198},{"cell_metrics":{"cells":18,"propagators":0},"file":"test-surface-defmacro-01.rkt","heartbeats":{"cell_allocs":227,"constraint_count":0,"constraint_retries":0,"elaborate_steps":109,"infer_steps":102,"meta_created":3,"meta_solved":3,"prop_allocs":0,"prop_firings":0,"reduce_steps":141,"resolution_cycles":3,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":24,"zonk_steps":110},"memory":{"gc_ms":72,"mem_after_bytes":177261152,"mem_before_bytes":177204744,"mem_retained_bytes":56408},"phases":{"elaborate_ms":27,"parse_ms":0,"qtt_ms":0,"reduce_ms":89,"trait_resolve_ms":0,"type_check_ms":58,"zonk_ms":0},"status":"pass","tests":14,"wall_ms":2616},{"file":"test-tabling.rkt","status":"pass","tests":20,"wall_ms":129},{"file":"test-term-lattice-01.rkt","status":"pass","tests":49,"wall_ms":306},{"file":"test-tms-cell.rkt","status":"pass","tests":34,"wall_ms":313},{"file":"test-trace-data.rkt","status":"pass","tests":16,"wall_ms":223},{"file":"test-trace-serialize.rkt","status":"pass","tests":19,"wall_ms":227},{"cell_metrics":{"cells":21,"propagators":0},"file":"test-trait-impl-01.rkt","heartbeats":{"cell_allocs":81,"constraint_count":0,"constraint_retries":0,"elaborate_steps":37,"infer_steps":29,"meta_created":0,"meta_solved":0,"prop_allocs":0,"prop_firings":0,"reduce_steps":31,"resolution_cycles":0,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":16,"zonk_steps":39},"memory":{"gc_ms":81,"mem_after_bytes":201539864,"mem_before_bytes":201557928,"mem_retained_bytes":0},"phases":{"elaborate_ms":14,"parse_ms":0,"qtt_ms":8,"reduce_ms":8,"trait_resolve_ms":0,"type_check_ms":16,"zonk_ms":0},"status":"pass","tests":16,"wall_ms":605},{"cell_metrics":{"cells":17,"propagators":0},"file":"test-termination-01.rkt","heartbeats":{"cell_allocs":64,"constraint_count":0,"constraint_retries":0,"elaborate_steps":18,"infer_steps":18,"meta_created":0,"meta_solved":0,"prop_allocs":0,"prop_firings":0,"reduce_steps":38,"resolution_cycles":0,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":0,"zonk_steps":22},"memory":{"gc_ms":74,"mem_after_bytes":177875752,"mem_before_bytes":177855280,"mem_retained_bytes":20472},"phases":{"elaborate_ms":6,"parse_ms":0,"qtt_ms":0,"reduce_ms":17,"trait_resolve_ms":0,"type_check_ms":4,"zonk_ms":0},"status":"pass","tests":45,"wall_ms":1114},{"cell_metrics":{"cells":20,"propagators":0},"file":"test-stdlib-02-traits-07.rkt","heartbeats":{"cell_allocs":424,"constraint_count":0,"constraint_retries":0,"elaborate_steps":297,"infer_steps":652,"meta_created":7,"meta_solved":7,"prop_allocs":0,"prop_firings":0,"reduce_steps":1421,"resolution_cycles":7,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":199,"zonk_steps":518},"memory":{"gc_ms":91,"mem_after_bytes":217964464,"mem_before_bytes":217956744,"mem_retained_bytes":7720},"phases":{"elaborate_ms":100,"parse_ms":0,"qtt_ms":28,"reduce_ms":4093,"trait_resolve_ms":0,"type_check_ms":740,"zonk_ms":0},"status":"pass","tests":22,"wall_ms":9688},{"cell_metrics":{"cells":19,"propagators":0},"file":"test-surface-defmacro-02.rkt","heartbeats":{"cell_allocs":255,"constraint_count":0,"constraint_retries":0,"elaborate_steps":105,"infer_steps":108,"meta_created":5,"meta_solved":5,"prop_allocs":0,"prop_firings":0,"reduce_steps":151,"resolution_cycles":5,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":34,"zonk_steps":100},"memory":{"gc_ms":91,"mem_after_bytes":223922592,"mem_before_bytes":223937264,"mem_retained_bytes":0},"phases":{"elaborate_ms":32,"parse_ms":0,"qtt_ms":0,"reduce_ms":54,"trait_resolve_ms":0,"type_check_ms":88,"zonk_ms":0},"status":"pass","tests":16,"wall_ms":3290},{"cell_metrics":{"cells":14,"propagators":0},"file":"test-tabling-integration.rkt","heartbeats":{"cell_allocs":129,"constraint_count":0,"constraint_retries":0,"elaborate_steps":32,"infer_steps":43,"meta_created":0,"meta_solved":0,"prop_allocs":0,"prop_firings":0,"reduce_steps":40,"resolution_cycles":0,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":13,"zonk_steps":23},"memory":{"gc_ms":75,"mem_after_bytes":191777064,"mem_before_bytes":191777640,"mem_retained_bytes":0},"phases":{"elaborate_ms":9,"parse_ms":0,"qtt_ms":0,"reduce_ms":12,"trait_resolve_ms":0,"type_check_ms":18,"zonk_ms":0},"status":"pass","tests":12,"wall_ms":2083},{"cell_metrics":{"cells":17,"propagators":0},"file":"test-stdlib-03-list-03.rkt","heartbeats":{"cell_allocs":288,"constraint_count":0,"constraint_retries":0,"elaborate_steps":391,"infer_steps":774,"meta_created":0,"meta_solved":0,"prop_allocs":0,"prop_firings":0,"reduce_steps":2015,"resolution_cycles":0,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":210,"zonk_steps":582},"memory":{"gc_ms":91,"mem_after_bytes":183091688,"mem_before_bytes":183088360,"mem_retained_bytes":3328},"phases":{"elaborate_ms":123,"parse_ms":0,"qtt_ms":0,"reduce_ms":5549,"trait_resolve_ms":0,"type_check_ms":887,"zonk_ms":0},"status":"pass","tests":18,"wall_ms":9808},{"file":"test-trait-resolution-bridge.rkt","status":"pass","tests":10,"wall_ms":125},{"cell_metrics":{"cells":17,"propagators":0},"file":"test-stdlib-03-list-04-02.rkt","heartbeats":{"cell_allocs":128,"constraint_count":0,"constraint_retries":0,"elaborate_steps":145,"infer_steps":289,"meta_created":0,"meta_solved":0,"prop_allocs":0,"prop_firings":0,"reduce_steps":1422,"resolution_cycles":0,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":81,"zonk_steps":216},"memory":{"gc_ms":130,"mem_after_bytes":165957736,"mem_before_bytes":165983400,"mem_retained_bytes":0},"phases":{"elaborate_ms":43,"parse_ms":0,"qtt_ms":0,"reduce_ms":7396,"trait_resolve_ms":0,"type_check_ms":290,"zonk_ms":0},"status":"pass","tests":8,"wall_ms":9068},{"cell_metrics":{"cells":17,"propagators":0},"file":"test-trait-narrowing-01.rkt","heartbeats":{"cell_allocs":112,"constraint_count":0,"constraint_retries":0,"elaborate_steps":34,"infer_steps":34,"meta_created":0,"meta_solved":0,"prop_allocs":0,"prop_firings":0,"reduce_steps":101,"resolution_cycles":0,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":0,"zonk_steps":41},"memory":{"gc_ms":80,"mem_after_bytes":191960640,"mem_before_bytes":191960760,"mem_retained_bytes":0},"phases":{"elaborate_ms":36,"parse_ms":0,"qtt_ms":0,"reduce_ms":76,"trait_resolve_ms":0,"type_check_ms":13,"zonk_ms":5},"status":"pass","tests":7,"wall_ms":1685},{"cell_metrics":{"cells":26,"propagators":0},"file":"test-trait-impl-03.rkt","heartbeats":{"cell_allocs":335,"constraint_count":0,"constraint_retries":0,"elaborate_steps":114,"infer_steps":98,"meta_created":0,"meta_solved":0,"prop_allocs":0,"prop_firings":0,"reduce_steps":494,"resolution_cycles":0,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":32,"zonk_steps":118},"memory":{"gc_ms":87,"mem_after_bytes":201839768,"mem_before_bytes":201855552,"mem_retained_bytes":0},"phases":{"elaborate_ms":49,"parse_ms":0,"qtt_ms":22,"reduce_ms":470,"trait_resolve_ms":0,"type_check_ms":91,"zonk_ms":0},"status":"pass","tests":16,"wall_ms":2428},{"cell_metrics":{"cells":17,"propagators":0},"file":"test-trait-introspection-01.rkt","heartbeats":{"cell_allocs":208,"constraint_count":0,"constraint_retries":0,"elaborate_steps":0,"infer_steps":0,"meta_created":0,"meta_solved":0,"prop_allocs":0,"prop_firings":0,"reduce_steps":0,"resolution_cycles":0,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":0,"zonk_steps":0},"memory":{"gc_ms":90,"mem_after_bytes":224256048,"mem_before_bytes":224259504,"mem_retained_bytes":0},"phases":{"elaborate_ms":0,"parse_ms":0,"qtt_ms":0,"reduce_ms":0,"trait_resolve_ms":0,"type_check_ms":0,"zonk_ms":0},"status":"pass","tests":17,"wall_ms":3120},{"cell_metrics":{"cells":28,"propagators":3},"file":"test-trait-tycon-01.rkt","heartbeats":{"cell_allocs":176,"constraint_count":0,"constraint_retries":0,"elaborate_steps":135,"infer_steps":73,"meta_created":9,"meta_solved":6,"prop_allocs":0,"prop_firings":0,"reduce_steps":154,"resolution_cycles":6,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":45,"zonk_steps":185},"memory":{"gc_ms":84,"mem_after_bytes":192456048,"mem_before_bytes":192471520,"mem_retained_bytes":0},"phases":{"elaborate_ms":73,"parse_ms":0,"qtt_ms":24,"reduce_ms":70,"trait_resolve_ms":0,"type_check_ms":175,"zonk_ms":0},"status":"pass","tests":15,"wall_ms":1445},{"cell_metrics":{"cells":20,"propagators":0},"file":"test-trait-impl-02.rkt","heartbeats":{"cell_allocs":210,"constraint_count":0,"constraint_retries":0,"elaborate_steps":67,"infer_steps":171,"meta_created":17,"meta_solved":17,"prop_allocs":0,"prop_firings":0,"reduce_steps":338,"resolution_cycles":17,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":64,"zonk_steps":181},"memory":{"gc_ms":85,"mem_after_bytes":193299456,"mem_before_bytes":193269112,"mem_retained_bytes":30344},"phases":{"elaborate_ms":63,"parse_ms":0,"qtt_ms":0,"reduce_ms":259,"trait_resolve_ms":0,"type_check_ms":238,"zonk_ms":0},"status":"pass","tests":16,"wall_ms":4418},{"cell_metrics":{"cells":22,"propagators":3},"file":"test-trait-resolution.rkt","heartbeats":{"cell_allocs":440,"constraint_count":0,"constraint_retries":0,"elaborate_steps":286,"infer_steps":276,"meta_created":16,"meta_solved":14,"prop_allocs":0,"prop_firings":0,"reduce_steps":549,"resolution_cycles":16,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":170,"zonk_steps":430},"memory":{"gc_ms":68,"mem_after_bytes":166796120,"mem_before_bytes":166764072,"mem_retained_bytes":32048},"phases":{"elaborate_ms":134,"parse_ms":0,"qtt_ms":175,"reduce_ms":360,"trait_resolve_ms":0,"type_check_ms":321,"zonk_ms":0},"status":"pass","tests":22,"wall_ms":2795},{"file":"test-tycon.rkt","status":"pass","tests":30,"wall_ms":398},{"file":"test-type-lattice.rkt","status":"pass","tests":35,"wall_ms":296},{"file":"test-typing-sessions.rkt","status":"pass","tests":10,"wall_ms":124},{"cell_metrics":{"cells":20,"propagators":0},"file":"test-trait-impl-04-01.rkt","heartbeats":{"cell_allocs":243,"constraint_count":0,"constraint_retries":0,"elaborate_steps":154,"infer_steps":325,"meta_created":15,"meta_solved":10,"prop_allocs":0,"prop_firings":0,"reduce_steps":698,"resolution_cycles":10,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":136,"zonk_steps":369},"memory":{"gc_ms":78,"mem_after_bytes":178134064,"mem_before_bytes":178150240,"mem_retained_bytes":0},"phases":{"elaborate_ms":204,"parse_ms":0,"qtt_ms":0,"reduce_ms":1071,"trait_resolve_ms":0,"type_check_ms":814,"zonk_ms":0},"status":"pass","tests":14,"wall_ms":4679},{"file":"test-typing.rkt","status":"pass","tests":38,"wall_ms":335},{"cell_metrics":{"cells":17,"propagators":0},"file":"test-trait-resolution-propagator.rkt","heartbeats":{"cell_allocs":352,"constraint_count":0,"constraint_retries":0,"elaborate_steps":54,"infer_steps":80,"meta_created":0,"meta_solved":0,"prop_allocs":0,"prop_firings":0,"reduce_steps":1553,"resolution_cycles":0,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":5,"zonk_steps":86},"memory":{"gc_ms":75,"mem_after_bytes":183772576,"mem_before_bytes":183760344,"mem_retained_bytes":12232},"phases":{"elaborate_ms":18,"parse_ms":0,"qtt_ms":0,"reduce_ms":1955,"trait_resolve_ms":0,"type_check_ms":53,"zonk_ms":0},"status":"pass","tests":11,"wall_ms":4451},{"cell_metrics":{"cells":18,"propagators":0},"file":"test-transient.rkt","heartbeats":{"cell_allocs":161,"constraint_count":0,"constraint_retries":0,"elaborate_steps":91,"infer_steps":87,"meta_created":0,"meta_solved":0,"prop_allocs":0,"prop_firings":0,"reduce_steps":134,"resolution_cycles":0,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":5,"zonk_steps":85},"memory":{"gc_ms":77,"mem_after_bytes":192989128,"mem_before_bytes":192996160,"mem_retained_bytes":0},"phases":{"elaborate_ms":25,"parse_ms":0,"qtt_ms":0,"reduce_ms":33,"trait_resolve_ms":0,"type_check_ms":35,"zonk_ms":0},"status":"pass","tests":38,"wall_ms":2132},{"file":"test-unify-structural.rkt","status":"pass","tests":35,"wall_ms":202},{"file":"test-unify.rkt","status":"pass","tests":50,"wall_ms":560},{"file":"test-unify-cell-driven.rkt","status":"pass","tests":13,"wall_ms":2195},{"cell_metrics":{"cells":18,"propagators":0},"file":"test-type-syntax-refactor.rkt","heartbeats":{"cell_allocs":246,"constraint_count":0,"constraint_retries":0,"elaborate_steps":61,"infer_steps":45,"meta_created":0,"meta_solved":0,"prop_allocs":0,"prop_firings":0,"reduce_steps":24,"resolution_cycles":0,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":8,"zonk_steps":10},"memory":{"gc_ms":78,"mem_after_bytes":194853768,"mem_before_bytes":194855416,"mem_retained_bytes":0},"phases":{"elaborate_ms":17,"parse_ms":0,"qtt_ms":0,"reduce_ms":0,"trait_resolve_ms":0,"type_check_ms":20,"zonk_ms":0},"status":"pass","tests":37,"wall_ms":2866},{"cell_metrics":{"cells":19,"propagators":0},"file":"test-unify-propagator.rkt","heartbeats":{"cell_allocs":159,"constraint_count":0,"constraint_retries":0,"elaborate_steps":34,"infer_steps":34,"meta_created":0,"meta_solved":0,"prop_allocs":0,"prop_firings":0,"reduce_steps":128,"resolution_cycles":0,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":4,"zonk_steps":38},"memory":{"gc_ms":76,"mem_after_bytes":184040392,"mem_before_bytes":183988376,"mem_retained_bytes":52016},"phases":{"elaborate_ms":9,"parse_ms":0,"qtt_ms":2,"reduce_ms":119,"trait_resolve_ms":0,"type_check_ms":17,"zonk_ms":0},"status":"pass","tests":14,"wall_ms":1518},{"file":"test-union-find.rkt","status":"pass","tests":19,"wall_ms":156},{"file":"test-union-find-types.rkt","status":"pass","tests":29,"wall_ms":212},{"cell_metrics":{"cells":18,"propagators":0},"file":"test-union-find-integration-01.rkt","heartbeats":{"cell_allocs":132,"constraint_count":0,"constraint_retries":0,"elaborate_steps":26,"infer_steps":31,"meta_created":0,"meta_solved":0,"prop_allocs":0,"prop_firings":0,"reduce_steps":34,"resolution_cycles":0,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":11,"zonk_steps":26},"memory":{"gc_ms":77,"mem_after_bytes":194504616,"mem_before_bytes":194510768,"mem_retained_bytes":0},"phases":{"elaborate_ms":7,"parse_ms":0,"qtt_ms":5,"reduce_ms":8,"trait_resolve_ms":0,"type_check_ms":15,"zonk_ms":0},"status":"pass","tests":6,"wall_ms":1094},{"cell_metrics":{"cells":20,"propagators":0},"file":"test-trait-impl-04-02.rkt","heartbeats":{"cell_allocs":171,"constraint_count":0,"constraint_retries":0,"elaborate_steps":119,"infer_steps":308,"meta_created":27,"meta_solved":18,"prop_allocs":0,"prop_firings":0,"reduce_steps":1727,"resolution_cycles":18,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":159,"zonk_steps":318},"memory":{"gc_ms":120,"mem_after_bytes":218100440,"mem_before_bytes":218093928,"mem_retained_bytes":6512},"phases":{"elaborate_ms":344,"parse_ms":0,"qtt_ms":0,"reduce_ms":4574,"trait_resolve_ms":0,"type_check_ms":1114,"zonk_ms":0},"status":"pass","tests":9,"wall_ms":8138},{"cell_metrics":{"cells":18,"propagators":0},"file":"test-union-types.rkt","heartbeats":{"cell_allocs":97,"constraint_count":0,"constraint_retries":0,"elaborate_steps":26,"infer_steps":21,"meta_created":0,"meta_solved":0,"prop_allocs":0,"prop_firings":0,"reduce_steps":14,"resolution_cycles":0,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":4,"zonk_steps":5},"memory":{"gc_ms":76,"mem_after_bytes":184836824,"mem_before_bytes":184838360,"mem_retained_bytes":0},"phases":{"elaborate_ms":7,"parse_ms":0,"qtt_ms":0,"reduce_ms":0,"trait_resolve_ms":0,"type_check_ms":8,"zonk_ms":0},"status":"pass","tests":33,"wall_ms":1184},{"file":"test-wf-benchmark-01.rkt","status":"pass","tests":10,"wall_ms":127},{"file":"test-wf-comparison-01.rkt","status":"pass","tests":10,"wall_ms":106},{"file":"test-wf-engine-01.rkt","status":"pass","tests":30,"wall_ms":257},{"cell_metrics":{"cells":21,"propagators":0},"file":"test-unit-type.rkt","heartbeats":{"cell_allocs":206,"constraint_count":0,"constraint_retries":0,"elaborate_steps":40,"infer_steps":49,"meta_created":2,"meta_solved":2,"prop_allocs":0,"prop_firings":0,"reduce_steps":65,"resolution_cycles":2,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":16,"zonk_steps":64},"memory":{"gc_ms":78,"mem_after_bytes":195359584,"mem_before_bytes":195360888,"mem_retained_bytes":0},"phases":{"elaborate_ms":11,"parse_ms":0,"qtt_ms":1,"reduce_ms":14,"trait_resolve_ms":0,"type_check_ms":25,"zonk_ms":0},"status":"pass","tests":9,"wall_ms":1707},{"file":"test-wf-errors-01.rkt","status":"pass","tests":6,"wall_ms":66},{"file":"test-wf-literature-01.rkt","status":"pass","tests":13,"wall_ms":172},{"cell_metrics":{"cells":19,"propagators":0},"file":"test-universe-level-inference.rkt","heartbeats":{"cell_allocs":146,"constraint_count":0,"constraint_retries":0,"elaborate_steps":28,"infer_steps":56,"meta_created":6,"meta_solved":6,"prop_allocs":0,"prop_firings":0,"reduce_steps":147,"resolution_cycles":6,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":18,"zonk_steps":68},"memory":{"gc_ms":77,"mem_after_bytes":194935272,"mem_before_bytes":194937952,"mem_retained_bytes":0},"phases":{"elaborate_ms":24,"parse_ms":0,"qtt_ms":2,"reduce_ms":71,"trait_resolve_ms":0,"type_check_ms":56,"zonk_ms":0},"status":"pass","tests":23,"wall_ms":1587},{"file":"test-wf-tabling-01.rkt","status":"pass","tests":16,"wall_ms":115},{"cell_metrics":{"cells":17,"propagators":0},"file":"test-string-ops.rkt","heartbeats":{"cell_allocs":432,"constraint_count":0,"constraint_retries":0,"elaborate_steps":92,"infer_steps":176,"meta_created":0,"meta_solved":0,"prop_allocs":0,"prop_firings":0,"reduce_steps":1947,"resolution_cycles":0,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":19,"zonk_steps":188},"memory":{"gc_ms":80,"mem_after_bytes":192283936,"mem_before_bytes":192235464,"mem_retained_bytes":48472},"phases":{"elaborate_ms":47,"parse_ms":0,"qtt_ms":0,"reduce_ms":2723,"trait_resolve_ms":0,"type_check_ms":160,"zonk_ms":0},"status":"pass","tests":27,"wall_ms":13809},{"file":"test-wf-propagators-01.rkt","status":"pass","tests":26,"wall_ms":291},{"file":"test-widening-fixpoint.rkt","status":"pass","tests":13,"wall_ms":131},{"cell_metrics":{"cells":25,"propagators":0},"file":"test-where-parsing.rkt","heartbeats":{"cell_allocs":233,"constraint_count":0,"constraint_retries":0,"elaborate_steps":179,"infer_steps":106,"meta_created":2,"meta_solved":2,"prop_allocs":0,"prop_firings":0,"reduce_steps":227,"resolution_cycles":2,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":82,"zonk_steps":196},"memory":{"gc_ms":82,"mem_after_bytes":195284096,"mem_before_bytes":195280448,"mem_retained_bytes":3648},"phases":{"elaborate_ms":48,"parse_ms":0,"qtt_ms":45,"reduce_ms":105,"trait_resolve_ms":0,"type_check_ms":79,"zonk_ms":0},"status":"pass","tests":16,"wall_ms":1167},{"cell_metrics":{"cells":19,"propagators":0},"file":"test-widen-specialization.rkt","heartbeats":{"cell_allocs":327,"constraint_count":0,"constraint_retries":0,"elaborate_steps":78,"infer_steps":117,"meta_created":0,"meta_solved":0,"prop_allocs":0,"prop_firings":0,"reduce_steps":244,"resolution_cycles":0,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":73,"zonk_steps":101},"memory":{"gc_ms":81,"mem_after_bytes":196063464,"mem_before_bytes":196029280,"mem_retained_bytes":34184},"phases":{"elaborate_ms":18,"parse_ms":0,"qtt_ms":101,"reduce_ms":202,"trait_resolve_ms":0,"type_check_ms":127,"zonk_ms":0},"status":"pass","tests":5,"wall_ms":1419},{"cell_metrics":{"cells":26,"propagators":6},"file":"test-widenable-trait.rkt","heartbeats":{"cell_allocs":197,"constraint_count":0,"constraint_retries":0,"elaborate_steps":55,"infer_steps":160,"meta_created":11,"meta_solved":8,"prop_allocs":0,"prop_firings":0,"reduce_steps":364,"resolution_cycles":8,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":80,"zonk_steps":201},"memory":{"gc_ms":81,"mem_after_bytes":192086744,"mem_before_bytes":192089448,"mem_retained_bytes":0},"phases":{"elaborate_ms":60,"parse_ms":0,"qtt_ms":21,"reduce_ms":281,"trait_resolve_ms":0,"type_check_ms":236,"zonk_ms":0},"status":"pass","tests":10,"wall_ms":2270},{"cell_metrics":{"cells":38,"propagators":0},"file":"test-varargs.rkt","heartbeats":{"cell_allocs":671,"constraint_count":0,"constraint_retries":0,"elaborate_steps":222,"infer_steps":400,"meta_created":41,"meta_solved":41,"prop_allocs":0,"prop_firings":0,"reduce_steps":662,"resolution_cycles":41,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":198,"zonk_steps":526},"memory":{"gc_ms":92,"mem_after_bytes":218601080,"mem_before_bytes":218580408,"mem_retained_bytes":20672},"phases":{"elaborate_ms":110,"parse_ms":0,"qtt_ms":65,"reduce_ms":397,"trait_resolve_ms":0,"type_check_ms":362,"zonk_ms":0},"status":"pass","tests":23,"wall_ms":3503},{"cell_metrics":{"cells":42,"propagators":0},"file":"test-surface-integration.rkt","heartbeats":{"cell_allocs":3085,"constraint_count":0,"constraint_retries":0,"elaborate_steps":815,"infer_steps":621,"meta_created":0,"meta_solved":0,"prop_allocs":0,"prop_firings":0,"reduce_steps":670,"resolution_cycles":0,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":285,"zonk_steps":685},"memory":{"gc_ms":78,"mem_after_bytes":203369424,"mem_before_bytes":203362400,"mem_retained_bytes":7024},"phases":{"elaborate_ms":218,"parse_ms":0,"qtt_ms":85,"reduce_ms":149,"trait_resolve_ms":0,"type_check_ms":372,"zonk_ms":0},"status":"pass","tests":77,"wall_ms":14763},{"cell_metrics":{"cells":39,"propagators":0},"file":"test-union-find-integration-02.rkt","heartbeats":{"cell_allocs":682,"constraint_count":0,"constraint_retries":0,"elaborate_steps":100,"infer_steps":135,"meta_created":0,"meta_solved":0,"prop_allocs":0,"prop_firings":0,"reduce_steps":256,"resolution_cycles":0,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":63,"zonk_steps":109},"memory":{"gc_ms":70,"mem_after_bytes":186353192,"mem_before_bytes":186280776,"mem_retained_bytes":72416},"phases":{"elaborate_ms":21,"parse_ms":0,"qtt_ms":19,"reduce_ms":103,"trait_resolve_ms":0,"type_check_ms":40,"zonk_ms":0},"status":"pass","tests":3,"wall_ms":5082},{"cell_metrics":{"cells":34,"propagators":0},"file":"test-unified-match-01.rkt","heartbeats":{"cell_allocs":626,"constraint_count":0,"constraint_retries":0,"elaborate_steps":281,"infer_steps":296,"meta_created":10,"meta_solved":10,"prop_allocs":0,"prop_firings":0,"reduce_steps":272,"resolution_cycles":10,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":74,"zonk_steps":353},"memory":{"gc_ms":75,"mem_after_bytes":196295928,"mem_before_bytes":196311680,"mem_retained_bytes":0},"phases":{"elaborate_ms":59,"parse_ms":0,"qtt_ms":14,"reduce_ms":77,"trait_resolve_ms":0,"type_check_ms":122,"zonk_ms":0},"status":"pass","tests":15,"wall_ms":8812},{"cell_metrics":{"cells":35,"propagators":0},"file":"test-transducer-02.rkt","heartbeats":{"cell_allocs":917,"constraint_count":0,"constraint_retries":0,"elaborate_steps":357,"infer_steps":680,"meta_created":0,"meta_solved":0,"prop_allocs":0,"prop_firings":0,"reduce_steps":2043,"resolution_cycles":0,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":298,"zonk_steps":556},"memory":{"gc_ms":94,"mem_after_bytes":224732496,"mem_before_bytes":224659960,"mem_retained_bytes":72536},"phases":{"elaborate_ms":84,"parse_ms":0,"qtt_ms":190,"reduce_ms":6231,"trait_resolve_ms":0,"type_check_ms":914,"zonk_ms":0},"status":"pass","tests":11,"wall_ms":10798},{"cell_metrics":{"cells":33,"propagators":0},"file":"test-transducer-01.rkt","heartbeats":{"cell_allocs":794,"constraint_count":0,"constraint_retries":0,"elaborate_steps":399,"infer_steps":949,"meta_created":0,"meta_solved":0,"prop_allocs":0,"prop_firings":0,"reduce_steps":2777,"resolution_cycles":0,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":367,"zonk_steps":750},"memory":{"gc_ms":105,"mem_after_bytes":202149632,"mem_before_bytes":202167184,"mem_retained_bytes":0},"phases":{"elaborate_ms":82,"parse_ms":0,"qtt_ms":169,"reduce_ms":7958,"trait_resolve_ms":0,"type_check_ms":1382,"zonk_ms":0},"status":"pass","tests":17,"wall_ms":13760}],"schema_version":3,"source":"affected","timestamp":"2026-03-30T01:59:48Z","total_tests":7529,"total_wall_ms":125990} {"all_pass":false,"branch":"main","commit":"04a6f804","file_count":383,"jobs":10,"machine":"macosx-aarch64","results":[{"cell_metrics":{"cells":19,"propagators":0},"file":"test-approx-literal.rkt","heartbeats":{"cell_allocs":220,"constraint_count":0,"constraint_retries":0,"elaborate_steps":25,"infer_steps":22,"meta_created":0,"meta_solved":0,"prop_allocs":0,"prop_firings":0,"reduce_steps":31,"resolution_cycles":0,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":8,"zonk_steps":34},"memory":{"gc_ms":45,"mem_after_bytes":135383256,"mem_before_bytes":135383536,"mem_retained_bytes":0},"phases":{"elaborate_ms":9,"parse_ms":0,"qtt_ms":4,"reduce_ms":17,"trait_resolve_ms":0,"type_check_ms":9,"zonk_ms":0},"status":"pass","tests":22,"wall_ms":1160},{"cell_metrics":{"cells":14,"propagators":0},"file":"test-atms-integration.rkt","heartbeats":{"cell_allocs":128,"constraint_count":0,"constraint_retries":0,"elaborate_steps":33,"infer_steps":42,"meta_created":0,"meta_solved":0,"prop_allocs":0,"prop_firings":0,"reduce_steps":33,"resolution_cycles":0,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":13,"zonk_steps":18},"memory":{"gc_ms":43,"mem_after_bytes":134928448,"mem_before_bytes":134928296,"mem_retained_bytes":152},"phases":{"elaborate_ms":11,"parse_ms":0,"qtt_ms":0,"reduce_ms":7,"trait_resolve_ms":0,"type_check_ms":23,"zonk_ms":0},"status":"pass","tests":11,"wall_ms":1134},{"file":"test-bilattice-01.rkt","status":"pass","tests":20,"wall_ms":167},{"cell_metrics":{"cells":18,"propagators":0},"file":"test-abstract-interpretation-e2e.rkt","heartbeats":{"cell_allocs":104,"constraint_count":0,"constraint_retries":0,"elaborate_steps":28,"infer_steps":88,"meta_created":8,"meta_solved":8,"prop_allocs":0,"prop_firings":0,"reduce_steps":221,"resolution_cycles":8,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":42,"zonk_steps":120},"memory":{"gc_ms":48,"mem_after_bytes":135837992,"mem_before_bytes":135771720,"mem_retained_bytes":66272},"phases":{"elaborate_ms":54,"parse_ms":0,"qtt_ms":0,"reduce_ms":194,"trait_resolve_ms":0,"type_check_ms":221,"zonk_ms":0},"status":"pass","tests":12,"wall_ms":1540},{"file":"test-architecture-d-02.rkt","status":"pass","tests":7,"wall_ms":135},{"file":"test-atms-types.rkt","status":"pass","tests":37,"wall_ms":294},{"cell_metrics":{"cells":23,"propagators":0},"file":"test-bound-args-01.rkt","heartbeats":{"cell_allocs":220,"constraint_count":0,"constraint_retries":0,"elaborate_steps":83,"infer_steps":91,"meta_created":0,"meta_solved":0,"prop_allocs":0,"prop_firings":0,"reduce_steps":104,"resolution_cycles":0,"solver_backtracks":4,"solver_unifies":19,"trait_resolve_steps":0,"unify_steps":0,"zonk_steps":99},"memory":{"gc_ms":47,"mem_after_bytes":136061480,"mem_before_bytes":136037352,"mem_retained_bytes":24128},"phases":{"elaborate_ms":21,"parse_ms":0,"qtt_ms":0,"reduce_ms":41,"trait_resolve_ms":0,"type_check_ms":20,"zonk_ms":0},"status":"pass","tests":8,"wall_ms":1072},{"file":"test-architecture-selection-01.rkt","status":"pass","tests":18,"wall_ms":170},{"cell_metrics":{"cells":28,"propagators":3},"file":"test-bundles.rkt","heartbeats":{"cell_allocs":212,"constraint_count":0,"constraint_retries":0,"elaborate_steps":124,"infer_steps":116,"meta_created":8,"meta_solved":8,"prop_allocs":0,"prop_firings":0,"reduce_steps":328,"resolution_cycles":8,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":80,"zonk_steps":188},"memory":{"gc_ms":56,"mem_after_bytes":136773704,"mem_before_bytes":136818920,"mem_retained_bytes":0},"phases":{"elaborate_ms":55,"parse_ms":0,"qtt_ms":70,"reduce_ms":228,"trait_resolve_ms":0,"type_check_ms":117,"zonk_ms":0},"status":"pass","tests":17,"wall_ms":1151},{"file":"test-atms.rkt","status":"pass","tests":42,"wall_ms":400},{"cell_metrics":{"cells":31,"propagators":3},"file":"test-bare-methods.rkt","heartbeats":{"cell_allocs":524,"constraint_count":0,"constraint_retries":0,"elaborate_steps":284,"infer_steps":270,"meta_created":17,"meta_solved":17,"prop_allocs":0,"prop_firings":0,"reduce_steps":873,"resolution_cycles":16,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":174,"zonk_steps":421},"memory":{"gc_ms":52,"mem_after_bytes":135965688,"mem_before_bytes":135954840,"mem_retained_bytes":10848},"phases":{"elaborate_ms":120,"parse_ms":0,"qtt_ms":162,"reduce_ms":685,"trait_resolve_ms":0,"type_check_ms":303,"zonk_ms":0},"status":"pass","tests":12,"wall_ms":2627},{"cell_metrics":{"cells":31,"propagators":0},"file":"test-capability-01.rkt","heartbeats":{"cell_allocs":226,"constraint_count":0,"constraint_retries":0,"elaborate_steps":2,"infer_steps":2,"meta_created":0,"meta_solved":0,"prop_allocs":0,"prop_firings":0,"reduce_steps":0,"resolution_cycles":0,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":0,"zonk_steps":2},"memory":{"gc_ms":55,"mem_after_bytes":137946520,"mem_before_bytes":137883504,"mem_retained_bytes":63016},"phases":{"elaborate_ms":1,"parse_ms":0,"qtt_ms":0,"reduce_ms":0,"trait_resolve_ms":0,"type_check_ms":0,"zonk_ms":0},"status":"pass","tests":11,"wall_ms":1054},{"cell_metrics":{"cells":25,"propagators":0},"file":"test-capability-02.rkt","heartbeats":{"cell_allocs":214,"constraint_count":0,"constraint_retries":0,"elaborate_steps":18,"infer_steps":18,"meta_created":0,"meta_solved":0,"prop_allocs":0,"prop_firings":0,"reduce_steps":10,"resolution_cycles":0,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":0,"zonk_steps":6},"memory":{"gc_ms":50,"mem_after_bytes":136706784,"mem_before_bytes":136709016,"mem_retained_bytes":0},"phases":{"elaborate_ms":7,"parse_ms":0,"qtt_ms":0,"reduce_ms":0,"trait_resolve_ms":0,"type_check_ms":9,"zonk_ms":0},"status":"pass","tests":13,"wall_ms":1014},{"cell_metrics":{"cells":21,"propagators":0},"file":"test-arity-checking.rkt","heartbeats":{"cell_allocs":265,"constraint_count":0,"constraint_retries":0,"elaborate_steps":95,"infer_steps":98,"meta_created":1,"meta_solved":1,"prop_allocs":0,"prop_firings":0,"reduce_steps":116,"resolution_cycles":1,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":41,"zonk_steps":100},"memory":{"gc_ms":50,"mem_after_bytes":135885848,"mem_before_bytes":135811176,"mem_retained_bytes":74672},"phases":{"elaborate_ms":32,"parse_ms":0,"qtt_ms":10,"reduce_ms":105,"trait_resolve_ms":0,"type_check_ms":99,"zonk_ms":1},"status":"pass","tests":16,"wall_ms":1749},{"cell_metrics":{"cells":35,"propagators":0},"file":"test-capability-03.rkt","heartbeats":{"cell_allocs":440,"constraint_count":0,"constraint_retries":0,"elaborate_steps":4,"infer_steps":4,"meta_created":0,"meta_solved":0,"prop_allocs":0,"prop_firings":0,"reduce_steps":2,"resolution_cycles":0,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":0,"zonk_steps":2},"memory":{"gc_ms":49,"mem_after_bytes":135545520,"mem_before_bytes":135107880,"mem_retained_bytes":437640},"phases":{"elaborate_ms":1,"parse_ms":0,"qtt_ms":0,"reduce_ms":0,"trait_resolve_ms":0,"type_check_ms":6,"zonk_ms":0},"status":"pass","tests":11,"wall_ms":1088},{"cell_metrics":{"cells":18,"propagators":0},"file":"test-abstract-domains.rkt","heartbeats":{"cell_allocs":308,"constraint_count":0,"constraint_retries":0,"elaborate_steps":60,"infer_steps":174,"meta_created":16,"meta_solved":16,"prop_allocs":0,"prop_firings":0,"reduce_steps":487,"resolution_cycles":16,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":72,"zonk_steps":269},"memory":{"gc_ms":51,"mem_after_bytes":135617672,"mem_before_bytes":135101480,"mem_retained_bytes":516192},"phases":{"elaborate_ms":107,"parse_ms":0,"qtt_ms":2,"reduce_ms":459,"trait_resolve_ms":0,"type_check_ms":527,"zonk_ms":0},"status":"pass","tests":18,"wall_ms":4801},{"cell_metrics":{"cells":27,"propagators":0},"file":"test-call-site-specialization.rkt","heartbeats":{"cell_allocs":681,"constraint_count":0,"constraint_retries":0,"elaborate_steps":229,"infer_steps":240,"meta_created":0,"meta_solved":0,"prop_allocs":0,"prop_firings":0,"reduce_steps":488,"resolution_cycles":0,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":155,"zonk_steps":275},"memory":{"gc_ms":57,"mem_after_bytes":137888408,"mem_before_bytes":137934488,"mem_retained_bytes":0},"phases":{"elaborate_ms":77,"parse_ms":0,"qtt_ms":267,"reduce_ms":306,"trait_resolve_ms":0,"type_check_ms":349,"zonk_ms":1},"status":"pass","tests":8,"wall_ms":2091},{"cell_metrics":{"cells":31,"propagators":0},"file":"test-capability-05.rkt","heartbeats":{"cell_allocs":7371,"constraint_count":0,"constraint_retries":0,"elaborate_steps":59,"infer_steps":48,"meta_created":1,"meta_solved":1,"prop_allocs":0,"prop_firings":0,"reduce_steps":30,"resolution_cycles":1,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":39,"zonk_steps":63},"memory":{"gc_ms":50,"mem_after_bytes":137542896,"mem_before_bytes":137484288,"mem_retained_bytes":58608},"phases":{"elaborate_ms":23,"parse_ms":0,"qtt_ms":15,"reduce_ms":0,"trait_resolve_ms":0,"type_check_ms":26,"zonk_ms":1},"status":"pass","tests":21,"wall_ms":1444},{"file":"test-champ-owner-id.rkt","status":"pass","tests":17,"wall_ms":143},{"cell_metrics":{"cells":61,"propagators":0},"file":"test-capability-04.rkt","heartbeats":{"cell_allocs":1057,"constraint_count":0,"constraint_retries":0,"elaborate_steps":219,"infer_steps":196,"meta_created":9,"meta_solved":4,"prop_allocs":0,"prop_firings":0,"reduce_steps":118,"resolution_cycles":4,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":138,"zonk_steps":215},"memory":{"gc_ms":47,"mem_after_bytes":137463160,"mem_before_bytes":137360376,"mem_retained_bytes":102784},"phases":{"elaborate_ms":84,"parse_ms":0,"qtt_ms":60,"reduce_ms":0,"trait_resolve_ms":0,"type_check_ms":95,"zonk_ms":0},"status":"pass","tests":12,"wall_ms":2031},{"cell_metrics":{"cells":48,"propagators":0},"file":"test-auto-implicits.rkt","heartbeats":{"cell_allocs":1157,"constraint_count":0,"constraint_retries":0,"elaborate_steps":276,"infer_steps":231,"meta_created":19,"meta_solved":19,"prop_allocs":0,"prop_firings":0,"reduce_steps":430,"resolution_cycles":19,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":155,"zonk_steps":389},"memory":{"gc_ms":48,"mem_after_bytes":135175912,"mem_before_bytes":135195560,"mem_retained_bytes":0},"phases":{"elaborate_ms":126,"parse_ms":0,"qtt_ms":62,"reduce_ms":152,"trait_resolve_ms":0,"type_check_ms":238,"zonk_ms":0},"status":"pass","tests":15,"wall_ms":2435},{"cell_metrics":{"cells":17,"propagators":0},"file":"test-capability-06.rkt","heartbeats":{"cell_allocs":11419,"constraint_count":0,"constraint_retries":0,"elaborate_steps":11,"infer_steps":12,"meta_created":1,"meta_solved":1,"prop_allocs":0,"prop_firings":0,"reduce_steps":6,"resolution_cycles":1,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":9,"zonk_steps":15},"memory":{"gc_ms":50,"mem_after_bytes":138897888,"mem_before_bytes":138792264,"mem_retained_bytes":105624},"phases":{"elaborate_ms":4,"parse_ms":0,"qtt_ms":4,"reduce_ms":0,"trait_resolve_ms":0,"type_check_ms":5,"zonk_ms":0},"status":"pass","tests":16,"wall_ms":1612},{"cell_metrics":{"cells":41,"propagators":0},"file":"test-capability-08.rkt","heartbeats":{"cell_allocs":11899,"constraint_count":0,"constraint_retries":0,"elaborate_steps":125,"infer_steps":109,"meta_created":5,"meta_solved":5,"prop_allocs":0,"prop_firings":0,"reduce_steps":132,"resolution_cycles":5,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":87,"zonk_steps":145},"memory":{"gc_ms":52,"mem_after_bytes":137260832,"mem_before_bytes":137168328,"mem_retained_bytes":92504},"phases":{"elaborate_ms":40,"parse_ms":0,"qtt_ms":34,"reduce_ms":0,"trait_resolve_ms":0,"type_check_ms":46,"zonk_ms":0},"status":"pass","tests":19,"wall_ms":1725},{"cell_metrics":{"cells":17,"propagators":0},"file":"test-coherence.rkt","heartbeats":{"cell_allocs":48,"constraint_count":0,"constraint_retries":0,"elaborate_steps":13,"infer_steps":11,"meta_created":0,"meta_solved":0,"prop_allocs":0,"prop_firings":0,"reduce_steps":77,"resolution_cycles":0,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":0,"zonk_steps":14},"memory":{"gc_ms":46,"mem_after_bytes":135539232,"mem_before_bytes":135550416,"mem_retained_bytes":0},"phases":{"elaborate_ms":4,"parse_ms":0,"qtt_ms":0,"reduce_ms":81,"trait_resolve_ms":0,"type_check_ms":8,"zonk_ms":0},"status":"pass","tests":13,"wall_ms":547},{"cell_metrics":{"cells":71,"propagators":0},"file":"test-capability-07.rkt","heartbeats":{"cell_allocs":2767,"constraint_count":0,"constraint_retries":0,"elaborate_steps":188,"infer_steps":152,"meta_created":5,"meta_solved":3,"prop_allocs":0,"prop_firings":0,"reduce_steps":107,"resolution_cycles":3,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":96,"zonk_steps":204},"memory":{"gc_ms":54,"mem_after_bytes":139471528,"mem_before_bytes":139205544,"mem_retained_bytes":265984},"phases":{"elaborate_ms":61,"parse_ms":0,"qtt_ms":49,"reduce_ms":0,"trait_resolve_ms":0,"type_check_ms":60,"zonk_ms":0},"status":"pass","tests":19,"wall_ms":2439},{"cell_metrics":{"cells":17,"propagators":0},"file":"test-coercion-warnings.rkt","heartbeats":{"cell_allocs":208,"constraint_count":0,"constraint_retries":0,"elaborate_steps":41,"infer_steps":41,"meta_created":0,"meta_solved":0,"prop_allocs":0,"prop_firings":0,"reduce_steps":47,"resolution_cycles":0,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":0,"zonk_steps":48},"memory":{"gc_ms":47,"mem_after_bytes":137527400,"mem_before_bytes":137527824,"mem_retained_bytes":0},"phases":{"elaborate_ms":8,"parse_ms":0,"qtt_ms":0,"reduce_ms":25,"trait_resolve_ms":0,"type_check_ms":16,"zonk_ms":0},"status":"pass","tests":13,"wall_ms":1464},{"cell_metrics":{"cells":17,"propagators":0},"file":"test-collection-conversions.rkt","heartbeats":{"cell_allocs":163,"constraint_count":0,"constraint_retries":0,"elaborate_steps":35,"infer_steps":80,"meta_created":3,"meta_solved":3,"prop_allocs":0,"prop_firings":0,"reduce_steps":150,"resolution_cycles":3,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":24,"zonk_steps":127},"memory":{"gc_ms":48,"mem_after_bytes":138971224,"mem_before_bytes":138972408,"mem_retained_bytes":0},"phases":{"elaborate_ms":15,"parse_ms":0,"qtt_ms":0,"reduce_ms":199,"trait_resolve_ms":0,"type_check_ms":101,"zonk_ms":0},"status":"pass","tests":11,"wall_ms":1740},{"cell_metrics":{"cells":87,"propagators":0},"file":"test-capability-05b.rkt","heartbeats":{"cell_allocs":12581,"constraint_count":0,"constraint_retries":0,"elaborate_steps":369,"infer_steps":333,"meta_created":17,"meta_solved":16,"prop_allocs":0,"prop_firings":0,"reduce_steps":190,"resolution_cycles":16,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":262,"zonk_steps":436},"memory":{"gc_ms":48,"mem_after_bytes":138385728,"mem_before_bytes":138417784,"mem_retained_bytes":0},"phases":{"elaborate_ms":124,"parse_ms":0,"qtt_ms":108,"reduce_ms":0,"trait_resolve_ms":0,"type_check_ms":135,"zonk_ms":0},"status":"pass","tests":24,"wall_ms":4009},{"file":"test-config-audit.rkt","status":"pass","tests":39,"wall_ms":340},{"cell_metrics":{"cells":17,"propagators":0},"file":"test-collection-traits-01.rkt","heartbeats":{"cell_allocs":256,"constraint_count":0,"constraint_retries":0,"elaborate_steps":35,"infer_steps":62,"meta_created":0,"meta_solved":0,"prop_allocs":0,"prop_firings":0,"reduce_steps":98,"resolution_cycles":0,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":14,"zonk_steps":694},"memory":{"gc_ms":49,"mem_after_bytes":139369160,"mem_before_bytes":139390256,"mem_retained_bytes":0},"phases":{"elaborate_ms":10,"parse_ms":0,"qtt_ms":0,"reduce_ms":136,"trait_resolve_ms":0,"type_check_ms":45,"zonk_ms":0},"status":"pass","tests":10,"wall_ms":1512},{"cell_metrics":{"cells":17,"propagators":0},"file":"test-constraint-amb-01.rkt","heartbeats":{"cell_allocs":48,"constraint_count":0,"constraint_retries":0,"elaborate_steps":15,"infer_steps":15,"meta_created":0,"meta_solved":0,"prop_allocs":0,"prop_firings":0,"reduce_steps":51,"resolution_cycles":0,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":0,"zonk_steps":18},"memory":{"gc_ms":49,"mem_after_bytes":139607504,"mem_before_bytes":139573064,"mem_retained_bytes":34440},"phases":{"elaborate_ms":3,"parse_ms":0,"qtt_ms":0,"reduce_ms":25,"trait_resolve_ms":0,"type_check_ms":4,"zonk_ms":0},"status":"pass","tests":10,"wall_ms":544},{"file":"test-constraint-cell-01.rkt","status":"pass","tests":33,"wall_ms":208},{"cell_metrics":{"cells":17,"propagators":0},"file":"test-confluence-01.rkt","heartbeats":{"cell_allocs":64,"constraint_count":0,"constraint_retries":0,"elaborate_steps":18,"infer_steps":18,"meta_created":0,"meta_solved":0,"prop_allocs":0,"prop_firings":0,"reduce_steps":38,"resolution_cycles":0,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":0,"zonk_steps":22},"memory":{"gc_ms":48,"mem_after_bytes":140226496,"mem_before_bytes":140230824,"mem_retained_bytes":0},"phases":{"elaborate_ms":5,"parse_ms":0,"qtt_ms":0,"reduce_ms":19,"trait_resolve_ms":0,"type_check_ms":5,"zonk_ms":0},"status":"pass","tests":58,"wall_ms":960},{"cell_metrics":{"cells":19,"propagators":0},"file":"test-cond-01.rkt","heartbeats":{"cell_allocs":360,"constraint_count":0,"constraint_retries":0,"elaborate_steps":304,"infer_steps":315,"meta_created":22,"meta_solved":22,"prop_allocs":0,"prop_firings":0,"reduce_steps":407,"resolution_cycles":22,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":222,"zonk_steps":355},"memory":{"gc_ms":50,"mem_after_bytes":139317248,"mem_before_bytes":139345464,"mem_retained_bytes":0},"phases":{"elaborate_ms":80,"parse_ms":0,"qtt_ms":163,"reduce_ms":73,"trait_resolve_ms":0,"type_check_ms":215,"zonk_ms":0},"status":"pass","tests":7,"wall_ms":1619},{"cell_metrics":{"cells":17,"propagators":0},"file":"test-constraint-chain-01.rkt","heartbeats":{"cell_allocs":64,"constraint_count":0,"constraint_retries":0,"elaborate_steps":22,"infer_steps":22,"meta_created":0,"meta_solved":0,"prop_allocs":0,"prop_firings":0,"reduce_steps":78,"resolution_cycles":0,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":0,"zonk_steps":26},"memory":{"gc_ms":50,"mem_after_bytes":140544392,"mem_before_bytes":140570248,"mem_retained_bytes":0},"phases":{"elaborate_ms":7,"parse_ms":0,"qtt_ms":0,"reduce_ms":47,"trait_resolve_ms":0,"type_check_ms":4,"zonk_ms":0},"status":"pass","tests":25,"wall_ms":755},{"cell_metrics":{"cells":14,"propagators":0},"file":"test-cfa-analysis-01.rkt","heartbeats":{"cell_allocs":0,"constraint_count":0,"constraint_retries":0,"elaborate_steps":0,"infer_steps":0,"meta_created":0,"meta_solved":0,"prop_allocs":0,"prop_firings":0,"reduce_steps":0,"resolution_cycles":0,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":0,"zonk_steps":0},"memory":{"gc_ms":56,"mem_after_bytes":156336944,"mem_before_bytes":156097384,"mem_retained_bytes":239560},"phases":{"elaborate_ms":0,"parse_ms":0,"qtt_ms":0,"reduce_ms":0,"trait_resolve_ms":0,"type_check_ms":0,"zonk_ms":0},"status":"pass","tests":14,"wall_ms":5611},{"cell_metrics":{"cells":17,"propagators":0},"file":"test-collection-traits-02.rkt","heartbeats":{"cell_allocs":496,"constraint_count":0,"constraint_retries":0,"elaborate_steps":213,"infer_steps":348,"meta_created":0,"meta_solved":0,"prop_allocs":0,"prop_firings":0,"reduce_steps":504,"resolution_cycles":0,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":85,"zonk_steps":1002},"memory":{"gc_ms":48,"mem_after_bytes":137754760,"mem_before_bytes":137747096,"mem_retained_bytes":7664},"phases":{"elaborate_ms":50,"parse_ms":0,"qtt_ms":0,"reduce_ms":799,"trait_resolve_ms":0,"type_check_ms":308,"zonk_ms":0},"status":"pass","tests":16,"wall_ms":3186},{"file":"test-constraint-retry-propagator.rkt","status":"pass","tests":16,"wall_ms":302},{"cell_metrics":{"cells":17,"propagators":0},"file":"test-constraint-propagators-01.rkt","heartbeats":{"cell_allocs":48,"constraint_count":0,"constraint_retries":0,"elaborate_steps":15,"infer_steps":15,"meta_created":0,"meta_solved":0,"prop_allocs":0,"prop_firings":0,"reduce_steps":51,"resolution_cycles":0,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":0,"zonk_steps":18},"memory":{"gc_ms":51,"mem_after_bytes":141008624,"mem_before_bytes":141012496,"mem_retained_bytes":0},"phases":{"elaborate_ms":5,"parse_ms":0,"qtt_ms":0,"reduce_ms":65,"trait_resolve_ms":0,"type_check_ms":4,"zonk_ms":0},"status":"pass","tests":21,"wall_ms":672},{"file":"test-cross-domain-propagator.rkt","status":"pass","tests":8,"wall_ms":81},{"cell_metrics":{"cells":23,"propagators":3},"file":"test-constraint-inference.rkt","heartbeats":{"cell_allocs":293,"constraint_count":0,"constraint_retries":0,"elaborate_steps":107,"infer_steps":97,"meta_created":6,"meta_solved":5,"prop_allocs":0,"prop_firings":0,"reduce_steps":196,"resolution_cycles":6,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":51,"zonk_steps":105},"memory":{"gc_ms":58,"mem_after_bytes":140564472,"mem_before_bytes":140550488,"mem_retained_bytes":13984},"phases":{"elaborate_ms":44,"parse_ms":0,"qtt_ms":30,"reduce_ms":106,"trait_resolve_ms":0,"type_check_ms":96,"zonk_ms":0},"status":"pass","tests":11,"wall_ms":1645},{"cell_metrics":{"cells":25,"propagators":0},"file":"test-cfa-analysis-02.rkt","heartbeats":{"cell_allocs":72,"constraint_count":0,"constraint_retries":0,"elaborate_steps":75,"infer_steps":33,"meta_created":0,"meta_solved":0,"prop_allocs":0,"prop_firings":0,"reduce_steps":21,"resolution_cycles":0,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":36,"zonk_steps":78},"memory":{"gc_ms":60,"mem_after_bytes":156583064,"mem_before_bytes":156546584,"mem_retained_bytes":36480},"phases":{"elaborate_ms":22,"parse_ms":0,"qtt_ms":27,"reduce_ms":0,"trait_resolve_ms":0,"type_check_ms":35,"zonk_ms":0},"status":"pass","tests":9,"wall_ms":6167},{"file":"test-ctor-registry.rkt","status":"pass","tests":40,"wall_ms":359},{"cell_metrics":{"cells":17,"propagators":0},"file":"test-cross-family-conversions-01.rkt","heartbeats":{"cell_allocs":64,"constraint_count":0,"constraint_retries":0,"elaborate_steps":8,"infer_steps":8,"meta_created":0,"meta_solved":0,"prop_allocs":0,"prop_firings":0,"reduce_steps":12,"resolution_cycles":0,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":0,"zonk_steps":12},"memory":{"gc_ms":56,"mem_after_bytes":141281512,"mem_before_bytes":141281696,"mem_retained_bytes":0},"phases":{"elaborate_ms":1,"parse_ms":0,"qtt_ms":0,"reduce_ms":4,"trait_resolve_ms":0,"type_check_ms":4,"zonk_ms":0},"status":"pass","tests":16,"wall_ms":658},{"cell_metrics":{"cells":17,"propagators":0},"file":"test-constraint-postponement.rkt","heartbeats":{"cell_allocs":178,"constraint_count":0,"constraint_retries":0,"elaborate_steps":48,"infer_steps":144,"meta_created":17,"meta_solved":17,"prop_allocs":0,"prop_firings":0,"reduce_steps":517,"resolution_cycles":17,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":51,"zonk_steps":160},"memory":{"gc_ms":53,"mem_after_bytes":139793000,"mem_before_bytes":139796440,"mem_retained_bytes":0},"phases":{"elaborate_ms":71,"parse_ms":0,"qtt_ms":0,"reduce_ms":583,"trait_resolve_ms":0,"type_check_ms":215,"zonk_ms":0},"status":"pass","tests":21,"wall_ms":2335},{"file":"test-defmacro.rkt","status":"pass","tests":53,"wall_ms":367},{"file":"test-dot-access-01.rkt","status":"pass","tests":14,"wall_ms":117},{"cell_metrics":{"cells":17,"propagators":0},"file":"test-decimal-literal.rkt","heartbeats":{"cell_allocs":144,"constraint_count":0,"constraint_retries":0,"elaborate_steps":12,"infer_steps":11,"meta_created":0,"meta_solved":0,"prop_allocs":0,"prop_firings":0,"reduce_steps":13,"resolution_cycles":0,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":0,"zonk_steps":16},"memory":{"gc_ms":59,"mem_after_bytes":157903560,"mem_before_bytes":157904376,"mem_retained_bytes":0},"phases":{"elaborate_ms":4,"parse_ms":0,"qtt_ms":0,"reduce_ms":6,"trait_resolve_ms":0,"type_check_ms":2,"zonk_ms":0},"status":"pass","tests":17,"wall_ms":1329},{"file":"test-effect-bridge-01.rkt","status":"pass","tests":18,"wall_ms":173},{"cell_metrics":{"cells":22,"propagators":0},"file":"test-core-prelude.rkt","heartbeats":{"cell_allocs":364,"constraint_count":0,"constraint_retries":0,"elaborate_steps":102,"infer_steps":185,"meta_created":3,"meta_solved":3,"prop_allocs":0,"prop_firings":0,"reduce_steps":294,"resolution_cycles":3,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":58,"zonk_steps":152},"memory":{"gc_ms":51,"mem_after_bytes":137926648,"mem_before_bytes":137948440,"mem_retained_bytes":0},"phases":{"elaborate_ms":35,"parse_ms":0,"qtt_ms":5,"reduce_ms":206,"trait_resolve_ms":0,"type_check_ms":230,"zonk_ms":0},"status":"pass","tests":11,"wall_ms":2557},{"cell_metrics":{"cells":17,"propagators":0},"file":"test-cross-family-conversions-03.rkt","heartbeats":{"cell_allocs":208,"constraint_count":0,"constraint_retries":0,"elaborate_steps":50,"infer_steps":104,"meta_created":0,"meta_solved":0,"prop_allocs":0,"prop_firings":0,"reduce_steps":207,"resolution_cycles":0,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":24,"zonk_steps":100},"memory":{"gc_ms":54,"mem_after_bytes":141193496,"mem_before_bytes":141196912,"mem_retained_bytes":0},"phases":{"elaborate_ms":17,"parse_ms":0,"qtt_ms":0,"reduce_ms":109,"trait_resolve_ms":0,"type_check_ms":137,"zonk_ms":0},"status":"pass","tests":17,"wall_ms":2138},{"file":"test-effect-collection-01.rkt","status":"pass","tests":19,"wall_ms":292},{"file":"test-effect-executor-01.rkt","status":"pass","tests":19,"wall_ms":267},{"file":"test-effect-ordering-01.rkt","status":"pass","tests":30,"wall_ms":293},{"cell_metrics":{"cells":17,"propagators":0},"file":"test-cross-family-conversions-02.rkt","heartbeats":{"cell_allocs":240,"constraint_count":0,"constraint_retries":0,"elaborate_steps":71,"infer_steps":164,"meta_created":0,"meta_solved":0,"prop_allocs":0,"prop_firings":0,"reduce_steps":326,"resolution_cycles":0,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":41,"zonk_steps":138},"memory":{"gc_ms":61,"mem_after_bytes":158239512,"mem_before_bytes":158249200,"mem_retained_bytes":0},"phases":{"elaborate_ms":22,"parse_ms":0,"qtt_ms":0,"reduce_ms":164,"trait_resolve_ms":0,"type_check_ms":190,"zonk_ms":0},"status":"pass","tests":15,"wall_ms":2746},{"file":"test-effect-position-01.rkt","status":"pass","tests":54,"wall_ms":344},{"file":"test-elab-speculation.rkt","status":"pass","tests":18,"wall_ms":369},{"file":"test-elaborator-network.rkt","status":"pass","tests":22,"wall_ms":243},{"file":"test-elaborator.rkt","status":"pass","tests":40,"wall_ms":396},{"cell_metrics":{"cells":23,"propagators":0},"file":"test-char-string-01.rkt","heartbeats":{"cell_allocs":641,"constraint_count":0,"constraint_retries":0,"elaborate_steps":47,"infer_steps":32,"meta_created":0,"meta_solved":0,"prop_allocs":0,"prop_firings":0,"reduce_steps":54,"resolution_cycles":0,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":0,"zonk_steps":56},"memory":{"gc_ms":59,"mem_after_bytes":155957240,"mem_before_bytes":155960056,"mem_retained_bytes":0},"phases":{"elaborate_ms":17,"parse_ms":0,"qtt_ms":0,"reduce_ms":30,"trait_resolve_ms":0,"type_check_ms":14,"zonk_ms":0},"status":"pass","tests":19,"wall_ms":8661},{"cell_metrics":{"cells":17,"propagators":0},"file":"test-char-string-02.rkt","heartbeats":{"cell_allocs":304,"constraint_count":0,"constraint_retries":0,"elaborate_steps":37,"infer_steps":55,"meta_created":0,"meta_solved":0,"prop_allocs":0,"prop_firings":0,"reduce_steps":129,"resolution_cycles":0,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":0,"zonk_steps":91},"memory":{"gc_ms":60,"mem_after_bytes":156630488,"mem_before_bytes":156580984,"mem_retained_bytes":49504},"phases":{"elaborate_ms":6,"parse_ms":0,"qtt_ms":0,"reduce_ms":43,"trait_resolve_ms":0,"type_check_ms":24,"zonk_ms":0},"status":"pass","tests":19,"wall_ms":8922},{"file":"test-errors.rkt","status":"pass","tests":13,"wall_ms":70},{"file":"test-eliminator-typing.rkt","status":"pass","tests":26,"wall_ms":914},{"file":"test-explain-provenance-01.rkt","status":"pass","tests":16,"wall_ms":179},{"cell_metrics":{"cells":64,"propagators":0},"file":"test-definitional-tree-01.rkt","heartbeats":{"cell_allocs":945,"constraint_count":0,"constraint_retries":0,"elaborate_steps":278,"infer_steps":237,"meta_created":5,"meta_solved":4,"prop_allocs":0,"prop_firings":0,"reduce_steps":79,"resolution_cycles":4,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":61,"zonk_steps":283},"memory":{"gc_ms":53,"mem_after_bytes":142384024,"mem_before_bytes":142375960,"mem_retained_bytes":8064},"phases":{"elaborate_ms":76,"parse_ms":0,"qtt_ms":2,"reduce_ms":0,"trait_resolve_ms":0,"type_check_ms":92,"zonk_ms":0},"status":"pass","tests":39,"wall_ms":3448},{"cell_metrics":{"cells":31,"propagators":3},"file":"test-collection-fns-01.rkt","heartbeats":{"cell_allocs":615,"constraint_count":0,"constraint_retries":0,"elaborate_steps":189,"infer_steps":490,"meta_created":83,"meta_solved":83,"prop_allocs":0,"prop_firings":0,"reduce_steps":1641,"resolution_cycles":78,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":175,"zonk_steps":569},"memory":{"gc_ms":90,"mem_after_bytes":138209736,"mem_before_bytes":138203088,"mem_retained_bytes":6648},"phases":{"elaborate_ms":547,"parse_ms":0,"qtt_ms":7,"reduce_ms":5513,"trait_resolve_ms":0,"type_check_ms":983,"zonk_ms":0},"status":"pass","tests":14,"wall_ms":8702},{"cell_metrics":{"cells":20,"propagators":0},"file":"test-error-messages.rkt","heartbeats":{"cell_allocs":141,"constraint_count":0,"constraint_retries":0,"elaborate_steps":32,"infer_steps":46,"meta_created":2,"meta_solved":2,"prop_allocs":0,"prop_firings":0,"reduce_steps":68,"resolution_cycles":2,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":12,"zonk_steps":28},"memory":{"gc_ms":59,"mem_after_bytes":157533016,"mem_before_bytes":157510808,"mem_retained_bytes":22208},"phases":{"elaborate_ms":7,"parse_ms":0,"qtt_ms":1,"reduce_ms":39,"trait_resolve_ms":0,"type_check_ms":29,"zonk_ms":0},"status":"pass","tests":29,"wall_ms":1383},{"cell_metrics":{"cells":25,"propagators":3},"file":"test-collection-fns-02.rkt","heartbeats":{"cell_allocs":512,"constraint_count":0,"constraint_retries":0,"elaborate_steps":156,"infer_steps":491,"meta_created":91,"meta_solved":91,"prop_allocs":0,"prop_firings":0,"reduce_steps":1585,"resolution_cycles":89,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":153,"zonk_steps":580},"memory":{"gc_ms":51,"mem_after_bytes":136601424,"mem_before_bytes":136550416,"mem_retained_bytes":51008},"phases":{"elaborate_ms":567,"parse_ms":0,"qtt_ms":0,"reduce_ms":5831,"trait_resolve_ms":0,"type_check_ms":976,"zonk_ms":0},"status":"pass","tests":15,"wall_ms":9154},{"file":"test-functor-ws-01.rkt","status":"pass","tests":6,"wall_ms":121},{"cell_metrics":{"cells":27,"propagators":0},"file":"test-foreign-block.rkt","heartbeats":{"cell_allocs":493,"constraint_count":0,"constraint_retries":0,"elaborate_steps":56,"infer_steps":52,"meta_created":0,"meta_solved":0,"prop_allocs":0,"prop_firings":0,"reduce_steps":70,"resolution_cycles":0,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":8,"zonk_steps":51},"memory":{"gc_ms":61,"mem_after_bytes":142576056,"mem_before_bytes":142564840,"mem_retained_bytes":11216},"phases":{"elaborate_ms":54,"parse_ms":0,"qtt_ms":0,"reduce_ms":19,"trait_resolve_ms":0,"type_check_ms":14,"zonk_ms":0},"status":"pass","tests":13,"wall_ms":1236},{"cell_metrics":{"cells":17,"propagators":0},"file":"test-eq-ord-extended-01.rkt","heartbeats":{"cell_allocs":192,"constraint_count":0,"constraint_retries":0,"elaborate_steps":36,"infer_steps":84,"meta_created":0,"meta_solved":0,"prop_allocs":0,"prop_firings":0,"reduce_steps":206,"resolution_cycles":0,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":24,"zonk_steps":72},"memory":{"gc_ms":53,"mem_after_bytes":142772552,"mem_before_bytes":142784520,"mem_retained_bytes":0},"phases":{"elaborate_ms":12,"parse_ms":0,"qtt_ms":0,"reduce_ms":211,"trait_resolve_ms":0,"type_check_ms":55,"zonk_ms":0},"status":"pass","tests":12,"wall_ms":2961},{"cell_metrics":{"cells":28,"propagators":0},"file":"test-eq-let-surface-01.rkt","heartbeats":{"cell_allocs":377,"constraint_count":0,"constraint_retries":0,"elaborate_steps":133,"infer_steps":189,"meta_created":20,"meta_solved":20,"prop_allocs":0,"prop_firings":0,"reduce_steps":856,"resolution_cycles":20,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":66,"zonk_steps":238},"memory":{"gc_ms":52,"mem_after_bytes":140899560,"mem_before_bytes":140932536,"mem_retained_bytes":0},"phases":{"elaborate_ms":83,"parse_ms":0,"qtt_ms":99,"reduce_ms":923,"trait_resolve_ms":0,"type_check_ms":153,"zonk_ms":0},"status":"pass","tests":13,"wall_ms":3066},{"cell_metrics":{"cells":50,"propagators":0},"file":"test-free-ordering.rkt","heartbeats":{"cell_allocs":1554,"constraint_count":0,"constraint_retries":0,"elaborate_steps":195,"infer_steps":150,"meta_created":0,"meta_solved":0,"prop_allocs":0,"prop_firings":0,"reduce_steps":187,"resolution_cycles":0,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":58,"zonk_steps":206},"memory":{"gc_ms":60,"mem_after_bytes":157987608,"mem_before_bytes":157992744,"mem_retained_bytes":0},"phases":{"elaborate_ms":58,"parse_ms":0,"qtt_ms":17,"reduce_ms":54,"trait_resolve_ms":0,"type_check_ms":70,"zonk_ms":0},"status":"pass","tests":11,"wall_ms":1715},{"file":"test-generators.rkt","status":"pass","tests":5,"wall_ms":378},{"cell_metrics":{"cells":17,"propagators":0},"file":"test-eq-ord-extended-02.rkt","heartbeats":{"cell_allocs":266,"constraint_count":0,"constraint_retries":0,"elaborate_steps":106,"infer_steps":240,"meta_created":10,"meta_solved":10,"prop_allocs":0,"prop_firings":0,"reduce_steps":682,"resolution_cycles":10,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":80,"zonk_steps":290},"memory":{"gc_ms":65,"mem_after_bytes":159766760,"mem_before_bytes":159772112,"mem_retained_bytes":0},"phases":{"elaborate_ms":72,"parse_ms":0,"qtt_ms":0,"reduce_ms":1050,"trait_resolve_ms":0,"type_check_ms":376,"zonk_ms":0},"status":"pass","tests":12,"wall_ms":4455},{"cell_metrics":{"cells":19,"propagators":0},"file":"test-foreign.rkt","heartbeats":{"cell_allocs":558,"constraint_count":0,"constraint_retries":0,"elaborate_steps":143,"infer_steps":114,"meta_created":0,"meta_solved":0,"prop_allocs":0,"prop_firings":0,"reduce_steps":232,"resolution_cycles":0,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":11,"zonk_steps":134},"memory":{"gc_ms":48,"mem_after_bytes":138599752,"mem_before_bytes":138601032,"mem_retained_bytes":0},"phases":{"elaborate_ms":42,"parse_ms":0,"qtt_ms":8,"reduce_ms":77,"trait_resolve_ms":0,"type_check_ms":52,"zonk_ms":0},"status":"pass","tests":38,"wall_ms":3491},{"cell_metrics":{"cells":19,"propagators":0},"file":"test-galois-connection.rkt","heartbeats":{"cell_allocs":274,"constraint_count":0,"constraint_retries":0,"elaborate_steps":55,"infer_steps":203,"meta_created":34,"meta_solved":34,"prop_allocs":0,"prop_firings":0,"reduce_steps":563,"resolution_cycles":34,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":108,"zonk_steps":280},"memory":{"gc_ms":53,"mem_after_bytes":142840744,"mem_before_bytes":142837592,"mem_retained_bytes":3152},"phases":{"elaborate_ms":148,"parse_ms":0,"qtt_ms":0,"reduce_ms":346,"trait_resolve_ms":0,"type_check_ms":480,"zonk_ms":0},"status":"pass","tests":14,"wall_ms":2761},{"file":"test-gde-errors.rkt","status":"pass","tests":24,"wall_ms":2233},{"cell_metrics":{"cells":27,"propagators":0},"file":"test-dot-access-02.rkt","heartbeats":{"cell_allocs":386,"constraint_count":0,"constraint_retries":0,"elaborate_steps":85,"infer_steps":77,"meta_created":18,"meta_solved":18,"prop_allocs":0,"prop_firings":0,"reduce_steps":172,"resolution_cycles":18,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":23,"zonk_steps":143},"memory":{"gc_ms":61,"mem_after_bytes":159042544,"mem_before_bytes":158993816,"mem_retained_bytes":48728},"phases":{"elaborate_ms":24,"parse_ms":0,"qtt_ms":9,"reduce_ms":49,"trait_resolve_ms":0,"type_check_ms":43,"zonk_ms":0},"status":"pass","tests":7,"wall_ms":6732},{"cell_metrics":{"cells":17,"propagators":0},"file":"test-first-rest-01.rkt","heartbeats":{"cell_allocs":357,"constraint_count":0,"constraint_retries":0,"elaborate_steps":103,"infer_steps":318,"meta_created":62,"meta_solved":62,"prop_allocs":0,"prop_firings":0,"reduce_steps":900,"resolution_cycles":58,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":100,"zonk_steps":418},"memory":{"gc_ms":58,"mem_after_bytes":157403504,"mem_before_bytes":157422520,"mem_retained_bytes":0},"phases":{"elaborate_ms":349,"parse_ms":0,"qtt_ms":3,"reduce_ms":1427,"trait_resolve_ms":0,"type_check_ms":588,"zonk_ms":5},"status":"pass","tests":15,"wall_ms":4656},{"cell_metrics":{"cells":17,"propagators":0},"file":"test-generic-arith-02.rkt","heartbeats":{"cell_allocs":184,"constraint_count":0,"constraint_retries":0,"elaborate_steps":34,"infer_steps":94,"meta_created":8,"meta_solved":8,"prop_allocs":0,"prop_firings":0,"reduce_steps":379,"resolution_cycles":8,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":38,"zonk_steps":156},"memory":{"gc_ms":55,"mem_after_bytes":146885952,"mem_before_bytes":146887624,"mem_retained_bytes":0},"phases":{"elaborate_ms":38,"parse_ms":0,"qtt_ms":0,"reduce_ms":376,"trait_resolve_ms":0,"type_check_ms":152,"zonk_ms":0},"status":"pass","tests":11,"wall_ms":2181},{"cell_metrics":{"cells":17,"propagators":0},"file":"test-generic-from.rkt","heartbeats":{"cell_allocs":192,"constraint_count":0,"constraint_retries":0,"elaborate_steps":36,"infer_steps":36,"meta_created":0,"meta_solved":0,"prop_allocs":0,"prop_firings":0,"reduce_steps":28,"resolution_cycles":0,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":0,"zonk_steps":39},"memory":{"gc_ms":49,"mem_after_bytes":138932776,"mem_before_bytes":138931976,"mem_retained_bytes":800},"phases":{"elaborate_ms":7,"parse_ms":0,"qtt_ms":0,"reduce_ms":8,"trait_resolve_ms":0,"type_check_ms":12,"zonk_ms":0},"status":"pass","tests":12,"wall_ms":1339},{"cell_metrics":{"cells":17,"propagators":0},"file":"test-generic-arith-01.rkt","heartbeats":{"cell_allocs":528,"constraint_count":0,"constraint_retries":0,"elaborate_steps":115,"infer_steps":95,"meta_created":0,"meta_solved":0,"prop_allocs":0,"prop_firings":0,"reduce_steps":65,"resolution_cycles":0,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":0,"zonk_steps":112},"memory":{"gc_ms":57,"mem_after_bytes":158619000,"mem_before_bytes":158603000,"mem_retained_bytes":16000},"phases":{"elaborate_ms":26,"parse_ms":0,"qtt_ms":0,"reduce_ms":40,"trait_resolve_ms":0,"type_check_ms":29,"zonk_ms":1},"status":"pass","tests":33,"wall_ms":4406},{"cell_metrics":{"cells":19,"propagators":0},"file":"test-guards-01.rkt","heartbeats":{"cell_allocs":418,"constraint_count":0,"constraint_retries":0,"elaborate_steps":312,"infer_steps":302,"meta_created":14,"meta_solved":14,"prop_allocs":0,"prop_firings":0,"reduce_steps":425,"resolution_cycles":14,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":204,"zonk_steps":362},"memory":{"gc_ms":51,"mem_after_bytes":139268696,"mem_before_bytes":139294600,"mem_retained_bytes":0},"phases":{"elaborate_ms":81,"parse_ms":0,"qtt_ms":188,"reduce_ms":111,"trait_resolve_ms":0,"type_check_ms":206,"zonk_ms":0},"status":"pass","tests":9,"wall_ms":1962},{"cell_metrics":{"cells":29,"propagators":0},"file":"test-extended-spec.rkt","heartbeats":{"cell_allocs":264,"constraint_count":0,"constraint_retries":0,"elaborate_steps":200,"infer_steps":98,"meta_created":0,"meta_solved":0,"prop_allocs":0,"prop_firings":0,"reduce_steps":75,"resolution_cycles":0,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":64,"zonk_steps":181},"memory":{"gc_ms":59,"mem_after_bytes":163275288,"mem_before_bytes":163218408,"mem_retained_bytes":56880},"phases":{"elaborate_ms":59,"parse_ms":0,"qtt_ms":51,"reduce_ms":21,"trait_resolve_ms":0,"type_check_ms":68,"zonk_ms":0},"status":"pass","tests":78,"wall_ms":8356},{"cell_metrics":{"cells":38,"propagators":3},"file":"test-generic-ops-01-02.rkt","heartbeats":{"cell_allocs":516,"constraint_count":0,"constraint_retries":0,"elaborate_steps":656,"infer_steps":388,"meta_created":35,"meta_solved":35,"prop_allocs":0,"prop_firings":0,"reduce_steps":939,"resolution_cycles":35,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":374,"zonk_steps":959},"memory":{"gc_ms":58,"mem_after_bytes":143349368,"mem_before_bytes":143346504,"mem_retained_bytes":2864},"phases":{"elaborate_ms":319,"parse_ms":0,"qtt_ms":422,"reduce_ms":1160,"trait_resolve_ms":0,"type_check_ms":1295,"zonk_ms":0},"status":"pass","tests":5,"wall_ms":4115},{"cell_metrics":{"cells":42,"propagators":6},"file":"test-generic-ops-01-01.rkt","heartbeats":{"cell_allocs":639,"constraint_count":0,"constraint_retries":0,"elaborate_steps":675,"infer_steps":379,"meta_created":35,"meta_solved":35,"prop_allocs":0,"prop_firings":0,"reduce_steps":973,"resolution_cycles":31,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":380,"zonk_steps":972},"memory":{"gc_ms":62,"mem_after_bytes":143168312,"mem_before_bytes":143129672,"mem_retained_bytes":38640},"phases":{"elaborate_ms":500,"parse_ms":0,"qtt_ms":424,"reduce_ms":1089,"trait_resolve_ms":0,"type_check_ms":1421,"zonk_ms":0},"status":"pass","tests":4,"wall_ms":4211},{"cell_metrics":{"cells":33,"propagators":0},"file":"test-generic-ops-02-01.rkt","heartbeats":{"cell_allocs":482,"constraint_count":0,"constraint_retries":0,"elaborate_steps":653,"infer_steps":372,"meta_created":32,"meta_solved":32,"prop_allocs":0,"prop_firings":0,"reduce_steps":896,"resolution_cycles":29,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":365,"zonk_steps":949},"memory":{"gc_ms":57,"mem_after_bytes":159044400,"mem_before_bytes":159045184,"mem_retained_bytes":0},"phases":{"elaborate_ms":376,"parse_ms":0,"qtt_ms":407,"reduce_ms":1196,"trait_resolve_ms":0,"type_check_ms":1351,"zonk_ms":0},"status":"pass","tests":4,"wall_ms":4162},{"cell_metrics":{"cells":26,"propagators":6},"file":"test-hasmethod-01.rkt","heartbeats":{"cell_allocs":108,"constraint_count":4,"constraint_retries":2,"elaborate_steps":92,"infer_steps":60,"meta_created":6,"meta_solved":6,"prop_allocs":0,"prop_firings":0,"reduce_steps":244,"resolution_cycles":4,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":46,"zonk_steps":136},"memory":{"gc_ms":67,"mem_after_bytes":163520152,"mem_before_bytes":163531112,"mem_retained_bytes":0},"phases":{"elaborate_ms":40,"parse_ms":0,"qtt_ms":20,"reduce_ms":167,"trait_resolve_ms":0,"type_check_ms":80,"zonk_ms":0},"status":"pass","tests":10,"wall_ms":1175},{"cell_metrics":{"cells":14,"propagators":0},"file":"test-global-constraints-01.rkt","heartbeats":{"cell_allocs":0,"constraint_count":0,"constraint_retries":0,"elaborate_steps":0,"infer_steps":0,"meta_created":0,"meta_solved":0,"prop_allocs":0,"prop_firings":0,"reduce_steps":0,"resolution_cycles":0,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":0,"zonk_steps":0},"memory":{"gc_ms":69,"mem_after_bytes":165433984,"mem_before_bytes":165192056,"mem_retained_bytes":241928},"phases":{"elaborate_ms":0,"parse_ms":0,"qtt_ms":0,"reduce_ms":0,"trait_resolve_ms":0,"type_check_ms":0,"zonk_ms":0},"status":"pass","tests":49,"wall_ms":5214},{"cell_metrics":{"cells":17,"propagators":0},"file":"test-hashable-01.rkt","heartbeats":{"cell_allocs":176,"constraint_count":0,"constraint_retries":0,"elaborate_steps":28,"infer_steps":38,"meta_created":0,"meta_solved":0,"prop_allocs":0,"prop_firings":0,"reduce_steps":689,"resolution_cycles":0,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":5,"zonk_steps":45},"memory":{"gc_ms":63,"mem_after_bytes":158746944,"mem_before_bytes":158748184,"mem_retained_bytes":0},"phases":{"elaborate_ms":6,"parse_ms":0,"qtt_ms":0,"reduce_ms":1540,"trait_resolve_ms":0,"type_check_ms":29,"zonk_ms":0},"status":"pass","tests":11,"wall_ms":3204},{"cell_metrics":{"cells":62,"propagators":3},"file":"test-hkt-errors.rkt","heartbeats":{"cell_allocs":1464,"constraint_count":1,"constraint_retries":0,"elaborate_steps":269,"infer_steps":254,"meta_created":19,"meta_solved":10,"prop_allocs":0,"prop_firings":0,"reduce_steps":369,"resolution_cycles":16,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":161,"zonk_steps":332},"memory":{"gc_ms":56,"mem_after_bytes":143490800,"mem_before_bytes":143449272,"mem_retained_bytes":41528},"phases":{"elaborate_ms":120,"parse_ms":0,"qtt_ms":122,"reduce_ms":181,"trait_resolve_ms":0,"type_check_ms":253,"zonk_ms":0},"status":"pass","tests":9,"wall_ms":1934},{"cell_metrics":{"cells":18,"propagators":0},"file":"test-hkt-kind.rkt","heartbeats":{"cell_allocs":66,"constraint_count":0,"constraint_retries":0,"elaborate_steps":28,"infer_steps":52,"meta_created":2,"meta_solved":2,"prop_allocs":0,"prop_firings":0,"reduce_steps":182,"resolution_cycles":2,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":14,"zonk_steps":48},"memory":{"gc_ms":69,"mem_after_bytes":163931672,"mem_before_bytes":163952440,"mem_retained_bytes":0},"phases":{"elaborate_ms":14,"parse_ms":0,"qtt_ms":0,"reduce_ms":183,"trait_resolve_ms":0,"type_check_ms":52,"zonk_ms":0},"status":"pass","tests":22,"wall_ms":1016},{"cell_metrics":{"cells":29,"propagators":0},"file":"test-higher-rank.rkt","heartbeats":{"cell_allocs":555,"constraint_count":0,"constraint_retries":0,"elaborate_steps":249,"infer_steps":189,"meta_created":1,"meta_solved":0,"prop_allocs":0,"prop_firings":0,"reduce_steps":321,"resolution_cycles":0,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":126,"zonk_steps":297},"memory":{"gc_ms":53,"mem_after_bytes":143708576,"mem_before_bytes":143722920,"mem_retained_bytes":0},"phases":{"elaborate_ms":66,"parse_ms":0,"qtt_ms":61,"reduce_ms":107,"trait_resolve_ms":0,"type_check_ms":178,"zonk_ms":0},"status":"pass","tests":19,"wall_ms":2011},{"file":"test-implicit-map-01.rkt","status":"pass","tests":11,"wall_ms":64},{"file":"test-inductive.rkt","status":"pass","tests":15,"wall_ms":155},{"file":"test-infra-cell-01.rkt","status":"pass","tests":37,"wall_ms":250},{"file":"test-infra-cell-constraint-01.rkt","status":"pass","tests":19,"wall_ms":2},{"file":"test-infra-cell-atms-01.rkt","status":"pass","tests":21,"wall_ms":158},{"file":"test-infra-cell-registration-01.rkt","status":"pass","tests":6,"wall_ms":93},{"file":"test-infra-cell-parallel-01.rkt","status":"pass","tests":6,"wall_ms":126},{"cell_metrics":{"cells":19,"propagators":0},"file":"test-hkt-impl.rkt","heartbeats":{"cell_allocs":244,"constraint_count":0,"constraint_retries":0,"elaborate_steps":54,"infer_steps":94,"meta_created":1,"meta_solved":1,"prop_allocs":0,"prop_firings":0,"reduce_steps":177,"resolution_cycles":1,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":26,"zonk_steps":92},"memory":{"gc_ms":66,"mem_after_bytes":159373168,"mem_before_bytes":159380432,"mem_retained_bytes":0},"phases":{"elaborate_ms":14,"parse_ms":0,"qtt_ms":0,"reduce_ms":330,"trait_resolve_ms":0,"type_check_ms":97,"zonk_ms":0},"status":"pass","tests":20,"wall_ms":2700},{"file":"test-integration.rkt","status":"pass","tests":33,"wall_ms":334},{"cell_metrics":{"cells":42,"propagators":3},"file":"test-generic-ops-02-02.rkt","heartbeats":{"cell_allocs":772,"constraint_count":0,"constraint_retries":0,"elaborate_steps":709,"infer_steps":578,"meta_created":70,"meta_solved":70,"prop_allocs":0,"prop_firings":0,"reduce_steps":1604,"resolution_cycles":67,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":435,"zonk_steps":1199},"memory":{"gc_ms":73,"mem_after_bytes":157691704,"mem_before_bytes":157629560,"mem_retained_bytes":62144},"phases":{"elaborate_ms":554,"parse_ms":0,"qtt_ms":422,"reduce_ms":3217,"trait_resolve_ms":0,"type_check_ms":1593,"zonk_ms":0},"status":"pass","tests":10,"wall_ms":7414},{"cell_metrics":{"cells":22,"propagators":0},"file":"test-implicit-inference.rkt","heartbeats":{"cell_allocs":267,"constraint_count":0,"constraint_retries":0,"elaborate_steps":101,"infer_steps":199,"meta_created":8,"meta_solved":8,"prop_allocs":0,"prop_firings":0,"reduce_steps":356,"resolution_cycles":8,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":57,"zonk_steps":184},"memory":{"gc_ms":61,"mem_after_bytes":158988904,"mem_before_bytes":158998936,"mem_retained_bytes":0},"phases":{"elaborate_ms":36,"parse_ms":0,"qtt_ms":5,"reduce_ms":413,"trait_resolve_ms":0,"type_check_ms":190,"zonk_ms":0},"status":"pass","tests":12,"wall_ms":2408},{"file":"test-io-boundary-01.rkt","status":"pass","tests":11,"wall_ms":198},{"file":"test-io-bridge-01.rkt","status":"pass","tests":15,"wall_ms":186},{"cell_metrics":{"cells":23,"propagators":0},"file":"test-generic-arith-03.rkt","heartbeats":{"cell_allocs":500,"constraint_count":0,"constraint_retries":0,"elaborate_steps":133,"infer_steps":123,"meta_created":0,"meta_solved":0,"prop_allocs":0,"prop_firings":0,"reduce_steps":84,"resolution_cycles":0,"solver_backtracks":3,"solver_unifies":15,"trait_resolve_steps":0,"unify_steps":0,"zonk_steps":139},"memory":{"gc_ms":69,"mem_after_bytes":178165736,"mem_before_bytes":178156800,"mem_retained_bytes":8936},"phases":{"elaborate_ms":25,"parse_ms":0,"qtt_ms":0,"reduce_ms":42,"trait_resolve_ms":0,"type_check_ms":34,"zonk_ms":0},"status":"pass","tests":27,"wall_ms":9350},{"cell_metrics":{"cells":14,"propagators":0},"file":"test-io-caps-01.rkt","heartbeats":{"cell_allocs":0,"constraint_count":0,"constraint_retries":0,"elaborate_steps":0,"infer_steps":0,"meta_created":0,"meta_solved":0,"prop_allocs":0,"prop_firings":0,"reduce_steps":0,"resolution_cycles":0,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":0,"zonk_steps":0},"memory":{"gc_ms":66,"mem_after_bytes":178355256,"mem_before_bytes":178191728,"mem_retained_bytes":163528},"phases":{"elaborate_ms":0,"parse_ms":0,"qtt_ms":0,"reduce_ms":0,"trait_resolve_ms":0,"type_check_ms":0,"zonk_ms":0},"status":"pass","tests":18,"wall_ms":261},{"cell_metrics":{"cells":18,"propagators":0},"file":"test-int.rkt","heartbeats":{"cell_allocs":325,"constraint_count":0,"constraint_retries":0,"elaborate_steps":50,"infer_steps":47,"meta_created":0,"meta_solved":0,"prop_allocs":0,"prop_firings":0,"reduce_steps":46,"resolution_cycles":0,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":3,"zonk_steps":61},"memory":{"gc_ms":54,"mem_after_bytes":146491424,"mem_before_bytes":146491640,"mem_retained_bytes":0},"phases":{"elaborate_ms":8,"parse_ms":0,"qtt_ms":0,"reduce_ms":18,"trait_resolve_ms":0,"type_check_ms":16,"zonk_ms":0},"status":"pass","tests":29,"wall_ms":2533},{"file":"test-io-csv-01.rkt","status":"pass","tests":20,"wall_ms":105},{"cell_metrics":{"cells":19,"propagators":0},"file":"test-io-dep-cap-01.rkt","heartbeats":{"cell_allocs":36,"constraint_count":0,"constraint_retries":0,"elaborate_steps":1,"infer_steps":0,"meta_created":0,"meta_solved":0,"prop_allocs":0,"prop_firings":0,"reduce_steps":0,"resolution_cycles":0,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":0,"zonk_steps":0},"memory":{"gc_ms":69,"mem_after_bytes":179189384,"mem_before_bytes":179048384,"mem_retained_bytes":141000},"phases":{"elaborate_ms":0,"parse_ms":0,"qtt_ms":0,"reduce_ms":0,"trait_resolve_ms":0,"type_check_ms":0,"zonk_ms":0},"status":"pass","tests":27,"wall_ms":361},{"cell_metrics":{"cells":17,"propagators":0},"file":"test-introspection.rkt","heartbeats":{"cell_allocs":176,"constraint_count":0,"constraint_retries":0,"elaborate_steps":2,"infer_steps":0,"meta_created":0,"meta_solved":0,"prop_allocs":0,"prop_firings":0,"reduce_steps":0,"resolution_cycles":0,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":0,"zonk_steps":1},"memory":{"gc_ms":58,"mem_after_bytes":158571184,"mem_before_bytes":158571912,"mem_retained_bytes":0},"phases":{"elaborate_ms":0,"parse_ms":0,"qtt_ms":0,"reduce_ms":0,"trait_resolve_ms":0,"type_check_ms":0,"zonk_ms":0},"status":"pass","tests":62,"wall_ms":1952},{"cell_metrics":{"cells":71,"propagators":0},"file":"test-functor-ws-02.rkt","heartbeats":{"cell_allocs":3306,"constraint_count":0,"constraint_retries":0,"elaborate_steps":4230,"infer_steps":384,"meta_created":0,"meta_solved":0,"prop_allocs":0,"prop_firings":0,"reduce_steps":1707,"resolution_cycles":0,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":1110,"zonk_steps":4953},"memory":{"gc_ms":165,"mem_after_bytes":137910208,"mem_before_bytes":138004072,"mem_retained_bytes":0},"phases":{"elaborate_ms":1211,"parse_ms":0,"qtt_ms":1847,"reduce_ms":0,"trait_resolve_ms":0,"type_check_ms":7997,"zonk_ms":3},"status":"pass","tests":5,"wall_ms":12919},{"cell_metrics":{"cells":22,"propagators":0},"file":"test-io-dep-session-01.rkt","heartbeats":{"cell_allocs":95,"constraint_count":0,"constraint_retries":0,"elaborate_steps":9,"infer_steps":0,"meta_created":0,"meta_solved":0,"prop_allocs":0,"prop_firings":0,"reduce_steps":0,"resolution_cycles":0,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":0,"zonk_steps":0},"memory":{"gc_ms":60,"mem_after_bytes":158827712,"mem_before_bytes":158827560,"mem_retained_bytes":152},"phases":{"elaborate_ms":3,"parse_ms":0,"qtt_ms":0,"reduce_ms":0,"trait_resolve_ms":0,"type_check_ms":0,"zonk_ms":0},"status":"pass","tests":14,"wall_ms":743},{"cell_metrics":{"cells":46,"propagators":0},"file":"test-io-cap-pipeline-01.rkt","heartbeats":{"cell_allocs":1907,"constraint_count":0,"constraint_retries":0,"elaborate_steps":143,"infer_steps":113,"meta_created":3,"meta_solved":2,"prop_allocs":0,"prop_firings":0,"reduce_steps":72,"resolution_cycles":2,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":92,"zonk_steps":154},"memory":{"gc_ms":60,"mem_after_bytes":160316584,"mem_before_bytes":159931832,"mem_retained_bytes":384752},"phases":{"elaborate_ms":40,"parse_ms":0,"qtt_ms":27,"reduce_ms":0,"trait_resolve_ms":0,"type_check_ms":42,"zonk_ms":0},"status":"pass","tests":11,"wall_ms":1905},{"cell_metrics":{"cells":25,"propagators":0},"file":"test-io-dep-session-02.rkt","heartbeats":{"cell_allocs":164,"constraint_count":0,"constraint_retries":0,"elaborate_steps":13,"infer_steps":0,"meta_created":0,"meta_solved":0,"prop_allocs":0,"prop_firings":0,"reduce_steps":0,"resolution_cycles":0,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":0,"zonk_steps":0},"memory":{"gc_ms":48,"mem_after_bytes":138099736,"mem_before_bytes":138093952,"mem_retained_bytes":5784},"phases":{"elaborate_ms":2,"parse_ms":0,"qtt_ms":0,"reduce_ms":0,"trait_resolve_ms":0,"type_check_ms":0,"zonk_ms":0},"status":"pass","tests":8,"wall_ms":940},{"cell_metrics":{"cells":31,"propagators":0},"file":"test-io-dep-cap-02.rkt","heartbeats":{"cell_allocs":3079,"constraint_count":0,"constraint_retries":0,"elaborate_steps":78,"infer_steps":61,"meta_created":1,"meta_solved":1,"prop_allocs":0,"prop_firings":0,"reduce_steps":45,"resolution_cycles":1,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":41,"zonk_steps":93},"memory":{"gc_ms":70,"mem_after_bytes":179956080,"mem_before_bytes":179652744,"mem_retained_bytes":303336},"phases":{"elaborate_ms":22,"parse_ms":0,"qtt_ms":15,"reduce_ms":0,"trait_resolve_ms":0,"type_check_ms":19,"zonk_ms":0},"status":"pass","tests":7,"wall_ms":1286},{"cell_metrics":{"cells":19,"propagators":0},"file":"test-identity-generic-ops.rkt","heartbeats":{"cell_allocs":349,"constraint_count":0,"constraint_retries":0,"elaborate_steps":61,"infer_steps":146,"meta_created":7,"meta_solved":7,"prop_allocs":0,"prop_firings":0,"reduce_steps":484,"resolution_cycles":7,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":40,"zonk_steps":193},"memory":{"gc_ms":63,"mem_after_bytes":165387968,"mem_before_bytes":165398368,"mem_retained_bytes":0},"phases":{"elaborate_ms":25,"parse_ms":0,"qtt_ms":0,"reduce_ms":1721,"trait_resolve_ms":0,"type_check_ms":150,"zonk_ms":0},"status":"pass","tests":22,"wall_ms":5261},{"cell_metrics":{"cells":28,"propagators":0},"file":"test-io-file-02.rkt","heartbeats":{"cell_allocs":379,"constraint_count":0,"constraint_retries":0,"elaborate_steps":35,"infer_steps":0,"meta_created":0,"meta_solved":0,"prop_allocs":0,"prop_firings":0,"reduce_steps":0,"resolution_cycles":0,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":0,"zonk_steps":0},"memory":{"gc_ms":59,"mem_after_bytes":160220128,"mem_before_bytes":160212072,"mem_retained_bytes":8056},"phases":{"elaborate_ms":9,"parse_ms":0,"qtt_ms":0,"reduce_ms":0,"trait_resolve_ms":0,"type_check_ms":0,"zonk_ms":0},"status":"pass","tests":8,"wall_ms":1072},{"file":"test-io-opaque-01.rkt","status":"pass","tests":13,"wall_ms":85},{"cell_metrics":{"cells":17,"propagators":0},"file":"test-io-fs-01.rkt","heartbeats":{"cell_allocs":112,"constraint_count":0,"constraint_retries":0,"elaborate_steps":14,"infer_steps":21,"meta_created":0,"meta_solved":0,"prop_allocs":0,"prop_firings":0,"reduce_steps":63,"resolution_cycles":0,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":0,"zonk_steps":28},"memory":{"gc_ms":70,"mem_after_bytes":179663616,"mem_before_bytes":179661272,"mem_retained_bytes":2344},"phases":{"elaborate_ms":3,"parse_ms":0,"qtt_ms":0,"reduce_ms":20,"trait_resolve_ms":0,"type_check_ms":9,"zonk_ms":0},"status":"pass","tests":7,"wall_ms":1258},{"cell_metrics":{"cells":18,"propagators":0},"file":"test-io-file-01.rkt","heartbeats":{"cell_allocs":187,"constraint_count":0,"constraint_retries":0,"elaborate_steps":26,"infer_steps":64,"meta_created":11,"meta_solved":0,"prop_allocs":0,"prop_firings":0,"reduce_steps":167,"resolution_cycles":0,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":1,"zonk_steps":74},"memory":{"gc_ms":63,"mem_after_bytes":159173112,"mem_before_bytes":159177736,"mem_retained_bytes":0},"phases":{"elaborate_ms":18,"parse_ms":0,"qtt_ms":0,"reduce_ms":47,"trait_resolve_ms":0,"type_check_ms":46,"zonk_ms":0},"status":"pass","tests":12,"wall_ms":1785},{"file":"test-io-session-02.rkt","status":"pass","tests":10,"wall_ms":110},{"cell_metrics":{"cells":14,"propagators":0},"file":"test-io-session-01.rkt","heartbeats":{"cell_allocs":0,"constraint_count":0,"constraint_retries":0,"elaborate_steps":0,"infer_steps":0,"meta_created":0,"meta_solved":0,"prop_allocs":0,"prop_firings":0,"reduce_steps":0,"resolution_cycles":0,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":0,"zonk_steps":0},"memory":{"gc_ms":72,"mem_after_bytes":179924544,"mem_before_bytes":180017496,"mem_retained_bytes":0},"phases":{"elaborate_ms":0,"parse_ms":0,"qtt_ms":0,"reduce_ms":0,"trait_resolve_ms":0,"type_check_ms":0,"zonk_ms":0},"status":"pass","tests":11,"wall_ms":322},{"cell_metrics":{"cells":14,"propagators":0},"file":"test-interval-domain-01.rkt","heartbeats":{"cell_allocs":0,"constraint_count":0,"constraint_retries":0,"elaborate_steps":0,"infer_steps":0,"meta_created":0,"meta_solved":0,"prop_allocs":0,"prop_firings":0,"reduce_steps":0,"resolution_cycles":0,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":0,"zonk_steps":0},"memory":{"gc_ms":71,"mem_after_bytes":178589416,"mem_before_bytes":178329760,"mem_retained_bytes":259656},"phases":{"elaborate_ms":0,"parse_ms":0,"qtt_ms":0,"reduce_ms":0,"trait_resolve_ms":0,"type_check_ms":0,"zonk_ms":0},"status":"pass","tests":43,"wall_ms":5459},{"cell_metrics":{"cells":19,"propagators":0},"file":"test-int-patterns-01.rkt","heartbeats":{"cell_allocs":347,"constraint_count":0,"constraint_retries":0,"elaborate_steps":235,"infer_steps":232,"meta_created":9,"meta_solved":9,"prop_allocs":0,"prop_firings":0,"reduce_steps":2168,"resolution_cycles":9,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":160,"zonk_steps":274},"memory":{"gc_ms":54,"mem_after_bytes":144821808,"mem_before_bytes":144768832,"mem_retained_bytes":52976},"phases":{"elaborate_ms":68,"parse_ms":0,"qtt_ms":150,"reduce_ms":4707,"trait_resolve_ms":0,"type_check_ms":155,"zonk_ms":1},"status":"pass","tests":9,"wall_ms":6314},{"cell_metrics":{"cells":27,"propagators":0},"file":"test-implicit-map-02.rkt","heartbeats":{"cell_allocs":509,"constraint_count":0,"constraint_retries":0,"elaborate_steps":110,"infer_steps":102,"meta_created":21,"meta_solved":21,"prop_allocs":0,"prop_firings":0,"reduce_steps":232,"resolution_cycles":21,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":33,"zonk_steps":185},"memory":{"gc_ms":73,"mem_after_bytes":182274048,"mem_before_bytes":182227184,"mem_retained_bytes":46864},"phases":{"elaborate_ms":31,"parse_ms":0,"qtt_ms":15,"reduce_ms":83,"trait_resolve_ms":0,"type_check_ms":50,"zonk_ms":0},"status":"pass","tests":10,"wall_ms":6812},{"cell_metrics":{"cells":24,"propagators":0},"file":"test-io-session-03.rkt","heartbeats":{"cell_allocs":218,"constraint_count":0,"constraint_retries":0,"elaborate_steps":21,"infer_steps":0,"meta_created":0,"meta_solved":0,"prop_allocs":0,"prop_firings":0,"reduce_steps":0,"resolution_cycles":0,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":0,"zonk_steps":0},"memory":{"gc_ms":60,"mem_after_bytes":159462920,"mem_before_bytes":159463296,"mem_retained_bytes":0},"phases":{"elaborate_ms":8,"parse_ms":0,"qtt_ms":0,"reduce_ms":0,"trait_resolve_ms":0,"type_check_ms":0,"zonk_ms":0},"status":"pass","tests":6,"wall_ms":862},{"cell_metrics":{"cells":32,"propagators":0},"file":"test-io-fio-01.rkt","heartbeats":{"cell_allocs":432,"constraint_count":0,"constraint_retries":0,"elaborate_steps":116,"infer_steps":173,"meta_created":5,"meta_solved":5,"prop_allocs":0,"prop_firings":0,"reduce_steps":543,"resolution_cycles":5,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":62,"zonk_steps":184},"memory":{"gc_ms":54,"mem_after_bytes":138487240,"mem_before_bytes":138527328,"mem_retained_bytes":0},"phases":{"elaborate_ms":54,"parse_ms":0,"qtt_ms":23,"reduce_ms":450,"trait_resolve_ms":0,"type_check_ms":142,"zonk_ms":0},"status":"pass","tests":15,"wall_ms":2507},{"cell_metrics":{"cells":28,"propagators":0},"file":"test-io-main-01.rkt","heartbeats":{"cell_allocs":1726,"constraint_count":0,"constraint_retries":0,"elaborate_steps":97,"infer_steps":109,"meta_created":12,"meta_solved":3,"prop_allocs":0,"prop_firings":0,"reduce_steps":81,"resolution_cycles":3,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":61,"zonk_steps":129},"memory":{"gc_ms":67,"mem_after_bytes":166346512,"mem_before_bytes":166205016,"mem_retained_bytes":141496},"phases":{"elaborate_ms":39,"parse_ms":0,"qtt_ms":47,"reduce_ms":6,"trait_resolve_ms":0,"type_check_ms":67,"zonk_ms":0},"status":"pass","tests":11,"wall_ms":2408},{"cell_metrics":{"cells":14,"propagators":0},"file":"test-kind-inference.rkt","heartbeats":{"cell_allocs":48,"constraint_count":0,"constraint_retries":0,"elaborate_steps":6,"infer_steps":3,"meta_created":0,"meta_solved":0,"prop_allocs":0,"prop_firings":0,"reduce_steps":6,"resolution_cycles":0,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":0,"zonk_steps":6},"memory":{"gc_ms":67,"mem_after_bytes":178718760,"mem_before_bytes":178718976,"mem_retained_bytes":0},"phases":{"elaborate_ms":2,"parse_ms":0,"qtt_ms":0,"reduce_ms":3,"trait_resolve_ms":0,"type_check_ms":0,"zonk_ms":0},"status":"pass","tests":22,"wall_ms":996},{"cell_metrics":{"cells":17,"propagators":0},"file":"test-io-path-01.rkt","heartbeats":{"cell_allocs":224,"constraint_count":0,"constraint_retries":0,"elaborate_steps":38,"infer_steps":71,"meta_created":0,"meta_solved":0,"prop_allocs":0,"prop_firings":0,"reduce_steps":170,"resolution_cycles":0,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":9,"zonk_steps":56},"memory":{"gc_ms":60,"mem_after_bytes":161044712,"mem_before_bytes":161063120,"mem_retained_bytes":0},"phases":{"elaborate_ms":12,"parse_ms":0,"qtt_ms":0,"reduce_ms":104,"trait_resolve_ms":0,"type_check_ms":49,"zonk_ms":0},"status":"pass","tests":14,"wall_ms":2346},{"cell_metrics":{"cells":17,"propagators":0},"file":"test-hashable-02.rkt","heartbeats":{"cell_allocs":213,"constraint_count":0,"constraint_retries":0,"elaborate_steps":47,"infer_steps":94,"meta_created":5,"meta_solved":5,"prop_allocs":0,"prop_firings":0,"reduce_steps":1977,"resolution_cycles":5,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":31,"zonk_steps":126},"memory":{"gc_ms":51,"mem_after_bytes":139391088,"mem_before_bytes":139342912,"mem_retained_bytes":48176},"phases":{"elaborate_ms":22,"parse_ms":0,"qtt_ms":0,"reduce_ms":10671,"trait_resolve_ms":0,"type_check_ms":112,"zonk_ms":0},"status":"pass","tests":7,"wall_ms":11801},{"cell_metrics":{"cells":14,"propagators":0},"file":"test-kind-inference-where.rkt","heartbeats":{"cell_allocs":229,"constraint_count":0,"constraint_retries":0,"elaborate_steps":180,"infer_steps":137,"meta_created":7,"meta_solved":7,"prop_allocs":0,"prop_firings":0,"reduce_steps":490,"resolution_cycles":7,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":110,"zonk_steps":254},"memory":{"gc_ms":70,"mem_after_bytes":180305256,"mem_before_bytes":180306232,"mem_retained_bytes":0},"phases":{"elaborate_ms":66,"parse_ms":0,"qtt_ms":60,"reduce_ms":327,"trait_resolve_ms":0,"type_check_ms":179,"zonk_ms":0},"status":"pass","tests":15,"wall_ms":2951},{"cell_metrics":{"cells":20,"propagators":0},"file":"test-list-literals.rkt","heartbeats":{"cell_allocs":122,"constraint_count":0,"constraint_retries":0,"elaborate_steps":43,"infer_steps":141,"meta_created":21,"meta_solved":21,"prop_allocs":0,"prop_firings":0,"reduce_steps":211,"resolution_cycles":21,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":55,"zonk_steps":133},"memory":{"gc_ms":66,"mem_after_bytes":161564632,"mem_before_bytes":161547656,"mem_retained_bytes":16976},"phases":{"elaborate_ms":52,"parse_ms":0,"qtt_ms":28,"reduce_ms":233,"trait_resolve_ms":0,"type_check_ms":151,"zonk_ms":0},"status":"pass","tests":32,"wall_ms":1372},{"cell_metrics":{"cells":24,"propagators":0},"file":"test-list-extended-01-01.rkt","heartbeats":{"cell_allocs":182,"constraint_count":0,"constraint_retries":0,"elaborate_steps":63,"infer_steps":247,"meta_created":38,"meta_solved":38,"prop_allocs":0,"prop_firings":0,"reduce_steps":841,"resolution_cycles":38,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":98,"zonk_steps":326},"memory":{"gc_ms":77,"mem_after_bytes":159625808,"mem_before_bytes":159649368,"mem_retained_bytes":0},"phases":{"elaborate_ms":85,"parse_ms":0,"qtt_ms":0,"reduce_ms":1418,"trait_resolve_ms":0,"type_check_ms":313,"zonk_ms":0},"status":"pass","tests":9,"wall_ms":3177},{"cell_metrics":{"cells":19,"propagators":0},"file":"test-lseq-01.rkt","heartbeats":{"cell_allocs":201,"constraint_count":0,"constraint_retries":0,"elaborate_steps":81,"infer_steps":173,"meta_created":0,"meta_solved":0,"prop_allocs":0,"prop_firings":0,"reduce_steps":291,"resolution_cycles":0,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":60,"zonk_steps":149},"memory":{"gc_ms":51,"mem_after_bytes":139598544,"mem_before_bytes":139552296,"mem_retained_bytes":46248},"phases":{"elaborate_ms":20,"parse_ms":0,"qtt_ms":28,"reduce_ms":269,"trait_resolve_ms":0,"type_check_ms":149,"zonk_ms":0},"status":"pass","tests":11,"wall_ms":1880},{"cell_metrics":{"cells":19,"propagators":0},"file":"test-lseq-traits.rkt","heartbeats":{"cell_allocs":185,"constraint_count":0,"constraint_retries":0,"elaborate_steps":30,"infer_steps":73,"meta_created":6,"meta_solved":4,"prop_allocs":0,"prop_firings":0,"reduce_steps":63,"resolution_cycles":4,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":47,"zonk_steps":122},"memory":{"gc_ms":63,"mem_after_bytes":159772168,"mem_before_bytes":159773208,"mem_retained_bytes":0},"phases":{"elaborate_ms":61,"parse_ms":0,"qtt_ms":19,"reduce_ms":0,"trait_resolve_ms":0,"type_check_ms":216,"zonk_ms":0},"status":"pass","tests":11,"wall_ms":1974},{"cell_metrics":{"cells":28,"propagators":0},"file":"test-let-arrow-syntax.rkt","heartbeats":{"cell_allocs":1235,"constraint_count":0,"constraint_retries":0,"elaborate_steps":398,"infer_steps":257,"meta_created":0,"meta_solved":0,"prop_allocs":0,"prop_firings":0,"reduce_steps":238,"resolution_cycles":0,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":147,"zonk_steps":363},"memory":{"gc_ms":71,"mem_after_bytes":182388568,"mem_before_bytes":182388088,"mem_retained_bytes":480},"phases":{"elaborate_ms":102,"parse_ms":0,"qtt_ms":85,"reduce_ms":81,"trait_resolve_ms":0,"type_check_ms":145,"zonk_ms":0},"status":"pass","tests":34,"wall_ms":5774},{"cell_metrics":{"cells":25,"propagators":0},"file":"test-map-bridge.rkt","heartbeats":{"cell_allocs":594,"constraint_count":0,"constraint_retries":0,"elaborate_steps":252,"infer_steps":304,"meta_created":6,"meta_solved":6,"prop_allocs":0,"prop_firings":0,"reduce_steps":221,"resolution_cycles":6,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":104,"zonk_steps":172},"memory":{"gc_ms":50,"mem_after_bytes":139859752,"mem_before_bytes":139875960,"mem_retained_bytes":0},"phases":{"elaborate_ms":83,"parse_ms":0,"qtt_ms":11,"reduce_ms":27,"trait_resolve_ms":0,"type_check_ms":304,"zonk_ms":0},"status":"pass","tests":17,"wall_ms":2709},{"cell_metrics":{"cells":25,"propagators":0},"file":"test-list-extended-02-01.rkt","heartbeats":{"cell_allocs":255,"constraint_count":0,"constraint_retries":0,"elaborate_steps":136,"infer_steps":544,"meta_created":79,"meta_solved":79,"prop_allocs":0,"prop_firings":0,"reduce_steps":1889,"resolution_cycles":79,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":191,"zonk_steps":634},"memory":{"gc_ms":85,"mem_after_bytes":166203176,"mem_before_bytes":166195584,"mem_retained_bytes":7592},"phases":{"elaborate_ms":205,"parse_ms":0,"qtt_ms":0,"reduce_ms":3672,"trait_resolve_ms":0,"type_check_ms":736,"zonk_ms":0},"status":"pass","tests":11,"wall_ms":6393},{"cell_metrics":{"cells":19,"propagators":0},"file":"test-map-entry.rkt","heartbeats":{"cell_allocs":172,"constraint_count":0,"constraint_retries":0,"elaborate_steps":66,"infer_steps":158,"meta_created":12,"meta_solved":12,"prop_allocs":0,"prop_firings":0,"reduce_steps":185,"resolution_cycles":12,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":54,"zonk_steps":84},"memory":{"gc_ms":62,"mem_after_bytes":159951232,"mem_before_bytes":159903064,"mem_retained_bytes":48168},"phases":{"elaborate_ms":37,"parse_ms":0,"qtt_ms":0,"reduce_ms":49,"trait_resolve_ms":0,"type_check_ms":187,"zonk_ms":0},"status":"pass","tests":10,"wall_ms":1855},{"cell_metrics":{"cells":18,"propagators":0},"file":"test-lattice.rkt","heartbeats":{"cell_allocs":739,"constraint_count":0,"constraint_retries":0,"elaborate_steps":219,"infer_steps":459,"meta_created":47,"meta_solved":47,"prop_allocs":0,"prop_firings":0,"reduce_steps":1355,"resolution_cycles":47,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":255,"zonk_steps":896},"memory":{"gc_ms":60,"mem_after_bytes":145199744,"mem_before_bytes":145157080,"mem_retained_bytes":42664},"phases":{"elaborate_ms":352,"parse_ms":0,"qtt_ms":288,"reduce_ms":1518,"trait_resolve_ms":0,"type_check_ms":1428,"zonk_ms":0},"status":"pass","tests":28,"wall_ms":7511},{"cell_metrics":{"cells":21,"propagators":0},"file":"test-lseq-literal.rkt","heartbeats":{"cell_allocs":602,"constraint_count":0,"constraint_retries":0,"elaborate_steps":290,"infer_steps":510,"meta_created":47,"meta_solved":47,"prop_allocs":0,"prop_firings":0,"reduce_steps":933,"resolution_cycles":47,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":297,"zonk_steps":515},"memory":{"gc_ms":64,"mem_after_bytes":161854408,"mem_before_bytes":161814192,"mem_retained_bytes":40216},"phases":{"elaborate_ms":209,"parse_ms":0,"qtt_ms":350,"reduce_ms":1792,"trait_resolve_ms":0,"type_check_ms":555,"zonk_ms":0},"status":"pass","tests":25,"wall_ms":5279},{"cell_metrics":{"cells":17,"propagators":0},"file":"test-map-set-traits-01.rkt","heartbeats":{"cell_allocs":80,"constraint_count":0,"constraint_retries":0,"elaborate_steps":8,"infer_steps":8,"meta_created":0,"meta_solved":0,"prop_allocs":0,"prop_firings":0,"reduce_steps":3,"resolution_cycles":0,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":0,"zonk_steps":121},"memory":{"gc_ms":50,"mem_after_bytes":139988824,"mem_before_bytes":139990592,"mem_retained_bytes":0},"phases":{"elaborate_ms":1,"parse_ms":0,"qtt_ms":0,"reduce_ms":0,"trait_resolve_ms":0,"type_check_ms":14,"zonk_ms":0},"status":"pass","tests":12,"wall_ms":1564},{"file":"test-metavar.rkt","status":"pass","tests":30,"wall_ms":337},{"cell_metrics":{"cells":21,"propagators":0},"file":"test-map-ops-eval.rkt","heartbeats":{"cell_allocs":741,"constraint_count":0,"constraint_retries":0,"elaborate_steps":317,"infer_steps":298,"meta_created":12,"meta_solved":12,"prop_allocs":0,"prop_firings":0,"reduce_steps":218,"resolution_cycles":12,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":47,"zonk_steps":285},"memory":{"gc_ms":74,"mem_after_bytes":182738768,"mem_before_bytes":182743736,"mem_retained_bytes":0},"phases":{"elaborate_ms":135,"parse_ms":0,"qtt_ms":21,"reduce_ms":8,"trait_resolve_ms":0,"type_check_ms":163,"zonk_ms":0},"status":"pass","tests":14,"wall_ms":2779},{"cell_metrics":{"cells":21,"propagators":0},"file":"test-io-csv-02.rkt","heartbeats":{"cell_allocs":154,"constraint_count":0,"constraint_retries":0,"elaborate_steps":32,"infer_steps":55,"meta_created":6,"meta_solved":0,"prop_allocs":0,"prop_firings":0,"reduce_steps":2985,"resolution_cycles":0,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":10,"zonk_steps":66},"memory":{"gc_ms":193,"mem_after_bytes":147013144,"mem_before_bytes":147047320,"mem_retained_bytes":0},"phases":{"elaborate_ms":23,"parse_ms":0,"qtt_ms":9,"reduce_ms":11070,"trait_resolve_ms":0,"type_check_ms":66,"zonk_ms":0},"status":"pass","tests":8,"wall_ms":12600},{"cell_metrics":{"cells":21,"propagators":0},"file":"test-map-set-traits-02.rkt","heartbeats":{"cell_allocs":377,"constraint_count":0,"constraint_retries":0,"elaborate_steps":77,"infer_steps":66,"meta_created":0,"meta_solved":0,"prop_allocs":0,"prop_firings":0,"reduce_steps":30,"resolution_cycles":0,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":17,"zonk_steps":177},"memory":{"gc_ms":65,"mem_after_bytes":166349616,"mem_before_bytes":166350696,"mem_retained_bytes":0},"phases":{"elaborate_ms":17,"parse_ms":0,"qtt_ms":3,"reduce_ms":0,"trait_resolve_ms":0,"type_check_ms":34,"zonk_ms":0},"status":"pass","tests":15,"wall_ms":2470},{"file":"test-module-network-01.rkt","status":"pass","tests":24,"wall_ms":163},{"cell_metrics":{"cells":25,"propagators":0},"file":"test-lseq-02.rkt","heartbeats":{"cell_allocs":945,"constraint_count":0,"constraint_retries":0,"elaborate_steps":327,"infer_steps":657,"meta_created":0,"meta_solved":0,"prop_allocs":0,"prop_firings":0,"reduce_steps":1245,"resolution_cycles":0,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":275,"zonk_steps":635},"memory":{"gc_ms":72,"mem_after_bytes":180542280,"mem_before_bytes":180565304,"mem_retained_bytes":0},"phases":{"elaborate_ms":86,"parse_ms":0,"qtt_ms":234,"reduce_ms":3167,"trait_resolve_ms":0,"type_check_ms":582,"zonk_ms":0},"status":"pass","tests":17,"wall_ms":7076},{"file":"test-mult-lattice.rkt","status":"pass","tests":9,"wall_ms":87},{"cell_metrics":{"cells":32,"propagators":0},"file":"test-method-resolution.rkt","heartbeats":{"cell_allocs":386,"constraint_count":0,"constraint_retries":0,"elaborate_steps":203,"infer_steps":188,"meta_created":12,"meta_solved":12,"prop_allocs":0,"prop_firings":0,"reduce_steps":596,"resolution_cycles":12,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":124,"zonk_steps":294},"memory":{"gc_ms":54,"mem_after_bytes":140754600,"mem_before_bytes":140657976,"mem_retained_bytes":96624},"phases":{"elaborate_ms":87,"parse_ms":0,"qtt_ms":104,"reduce_ms":417,"trait_resolve_ms":0,"type_check_ms":209,"zonk_ms":0},"status":"pass","tests":23,"wall_ms":2043},{"cell_metrics":{"cells":25,"propagators":0},"file":"test-list-extended-02-02.rkt","heartbeats":{"cell_allocs":297,"constraint_count":0,"constraint_retries":0,"elaborate_steps":145,"infer_steps":497,"meta_created":71,"meta_solved":71,"prop_allocs":0,"prop_firings":0,"reduce_steps":1590,"resolution_cycles":71,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":179,"zonk_steps":581},"memory":{"gc_ms":208,"mem_after_bytes":178904784,"mem_before_bytes":178850768,"mem_retained_bytes":54016},"phases":{"elaborate_ms":198,"parse_ms":0,"qtt_ms":0,"reduce_ms":6250,"trait_resolve_ms":0,"type_check_ms":618,"zonk_ms":0},"status":"pass","tests":14,"wall_ms":9476},{"cell_metrics":{"cells":22,"propagators":0},"file":"test-mixed-map.rkt","heartbeats":{"cell_allocs":469,"constraint_count":0,"constraint_retries":0,"elaborate_steps":143,"infer_steps":282,"meta_created":38,"meta_solved":50,"prop_allocs":0,"prop_firings":0,"reduce_steps":194,"resolution_cycles":50,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":108,"zonk_steps":306},"memory":{"gc_ms":63,"mem_after_bytes":163143424,"mem_before_bytes":163148360,"mem_retained_bytes":0},"phases":{"elaborate_ms":43,"parse_ms":0,"qtt_ms":34,"reduce_ms":14,"trait_resolve_ms":0,"type_check_ms":136,"zonk_ms":1},"status":"pass","tests":21,"wall_ms":2284},{"cell_metrics":{"cells":19,"propagators":0},"file":"test-map.rkt","heartbeats":{"cell_allocs":434,"constraint_count":0,"constraint_retries":0,"elaborate_steps":150,"infer_steps":108,"meta_created":6,"meta_solved":4,"prop_allocs":0,"prop_firings":0,"reduce_steps":196,"resolution_cycles":4,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":16,"zonk_steps":162},"memory":{"gc_ms":60,"mem_after_bytes":160672760,"mem_before_bytes":160717704,"mem_retained_bytes":0},"phases":{"elaborate_ms":42,"parse_ms":0,"qtt_ms":3,"reduce_ms":57,"trait_resolve_ms":0,"type_check_ms":37,"zonk_ms":0},"status":"pass","tests":37,"wall_ms":3156},{"file":"test-namespace.rkt","status":"pass","tests":20,"wall_ms":162},{"cell_metrics":{"cells":34,"propagators":0},"file":"test-list-extended-01-02.rkt","heartbeats":{"cell_allocs":485,"constraint_count":0,"constraint_retries":0,"elaborate_steps":202,"infer_steps":675,"meta_created":97,"meta_solved":97,"prop_allocs":0,"prop_firings":0,"reduce_steps":2427,"resolution_cycles":97,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":260,"zonk_steps":817},"memory":{"gc_ms":100,"mem_after_bytes":138795224,"mem_before_bytes":138742392,"mem_retained_bytes":52832},"phases":{"elaborate_ms":290,"parse_ms":0,"qtt_ms":4,"reduce_ms":6929,"trait_resolve_ms":0,"type_check_ms":929,"zonk_ms":0},"status":"pass","tests":15,"wall_ms":10350},{"file":"test-narrowing-01.rkt","status":"pass","tests":31,"wall_ms":224},{"cell_metrics":{"cells":18,"propagators":0},"file":"test-mult-inference.rkt","heartbeats":{"cell_allocs":216,"constraint_count":0,"constraint_retries":0,"elaborate_steps":51,"infer_steps":51,"meta_created":1,"meta_solved":1,"prop_allocs":0,"prop_firings":0,"reduce_steps":89,"resolution_cycles":1,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":21,"zonk_steps":70},"memory":{"gc_ms":64,"mem_after_bytes":167122072,"mem_before_bytes":167120904,"mem_retained_bytes":1168},"phases":{"elaborate_ms":16,"parse_ms":0,"qtt_ms":6,"reduce_ms":33,"trait_resolve_ms":0,"type_check_ms":27,"zonk_ms":0},"status":"pass","tests":23,"wall_ms":1438},{"cell_metrics":{"cells":31,"propagators":0},"file":"test-match-builtins.rkt","heartbeats":{"cell_allocs":736,"constraint_count":0,"constraint_retries":0,"elaborate_steps":286,"infer_steps":255,"meta_created":0,"meta_solved":0,"prop_allocs":0,"prop_firings":0,"reduce_steps":282,"resolution_cycles":0,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":55,"zonk_steps":304},"memory":{"gc_ms":51,"mem_after_bytes":145442776,"mem_before_bytes":145445472,"mem_retained_bytes":0},"phases":{"elaborate_ms":74,"parse_ms":0,"qtt_ms":0,"reduce_ms":143,"trait_resolve_ms":0,"type_check_ms":120,"zonk_ms":0},"status":"pass","tests":24,"wall_ms":3509},{"cell_metrics":{"cells":21,"propagators":0},"file":"test-mult-propagator.rkt","heartbeats":{"cell_allocs":170,"constraint_count":0,"constraint_retries":0,"elaborate_steps":30,"infer_steps":31,"meta_created":0,"meta_solved":0,"prop_allocs":0,"prop_firings":0,"reduce_steps":183,"resolution_cycles":0,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":3,"zonk_steps":40},"memory":{"gc_ms":68,"mem_after_bytes":181251576,"mem_before_bytes":181131872,"mem_retained_bytes":119704},"phases":{"elaborate_ms":7,"parse_ms":0,"qtt_ms":1,"reduce_ms":169,"trait_resolve_ms":0,"type_check_ms":14,"zonk_ms":0},"status":"pass","tests":14,"wall_ms":1494},{"cell_metrics":{"cells":23,"propagators":0},"file":"test-multi-body-defn.rkt","heartbeats":{"cell_allocs":752,"constraint_count":0,"constraint_retries":0,"elaborate_steps":190,"infer_steps":103,"meta_created":0,"meta_solved":0,"prop_allocs":0,"prop_firings":0,"reduce_steps":131,"resolution_cycles":0,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":97,"zonk_steps":193},"memory":{"gc_ms":49,"mem_after_bytes":141156440,"mem_before_bytes":141164728,"mem_retained_bytes":0},"phases":{"elaborate_ms":51,"parse_ms":0,"qtt_ms":43,"reduce_ms":31,"trait_resolve_ms":0,"type_check_ms":71,"zonk_ms":0},"status":"pass","tests":15,"wall_ms":1554},{"cell_metrics":{"cells":17,"propagators":0},"file":"test-negative-literals.rkt","heartbeats":{"cell_allocs":112,"constraint_count":0,"constraint_retries":0,"elaborate_steps":9,"infer_steps":9,"meta_created":0,"meta_solved":0,"prop_allocs":0,"prop_firings":0,"reduce_steps":14,"resolution_cycles":0,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":0,"zonk_steps":16},"memory":{"gc_ms":51,"mem_after_bytes":145773672,"mem_before_bytes":145777816,"mem_retained_bytes":0},"phases":{"elaborate_ms":3,"parse_ms":0,"qtt_ms":0,"reduce_ms":7,"trait_resolve_ms":0,"type_check_ms":1,"zonk_ms":0},"status":"pass","tests":25,"wall_ms":1056},{"cell_metrics":{"cells":29,"propagators":0},"file":"test-nil-type.rkt","heartbeats":{"cell_allocs":576,"constraint_count":0,"constraint_retries":0,"elaborate_steps":82,"infer_steps":66,"meta_created":8,"meta_solved":8,"prop_allocs":0,"prop_firings":0,"reduce_steps":106,"resolution_cycles":8,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":19,"zonk_steps":105},"memory":{"gc_ms":49,"mem_after_bytes":142324048,"mem_before_bytes":142342704,"mem_retained_bytes":0},"phases":{"elaborate_ms":20,"parse_ms":0,"qtt_ms":9,"reduce_ms":20,"trait_resolve_ms":0,"type_check_ms":27,"zonk_ms":1},"status":"pass","tests":45,"wall_ms":2454},{"file":"test-numeric-join.rkt","status":"pass","tests":25,"wall_ms":114},{"cell_metrics":{"cells":19,"propagators":0},"file":"test-new-lattice-cell.rkt","heartbeats":{"cell_allocs":1020,"constraint_count":0,"constraint_retries":0,"elaborate_steps":543,"infer_steps":442,"meta_created":0,"meta_solved":0,"prop_allocs":0,"prop_firings":0,"reduce_steps":771,"resolution_cycles":0,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":301,"zonk_steps":648},"memory":{"gc_ms":75,"mem_after_bytes":181512656,"mem_before_bytes":181515336,"mem_retained_bytes":0},"phases":{"elaborate_ms":159,"parse_ms":0,"qtt_ms":456,"reduce_ms":377,"trait_resolve_ms":0,"type_check_ms":593,"zonk_ms":0},"status":"pass","tests":10,"wall_ms":3460},{"cell_metrics":{"cells":17,"propagators":0},"file":"test-numeric-coercion.rkt","heartbeats":{"cell_allocs":368,"constraint_count":0,"constraint_retries":0,"elaborate_steps":73,"infer_steps":73,"meta_created":0,"meta_solved":0,"prop_allocs":0,"prop_firings":0,"reduce_steps":90,"resolution_cycles":0,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":0,"zonk_steps":87},"memory":{"gc_ms":54,"mem_after_bytes":146002160,"mem_before_bytes":146002896,"mem_retained_bytes":0},"phases":{"elaborate_ms":16,"parse_ms":0,"qtt_ms":0,"reduce_ms":35,"trait_resolve_ms":0,"type_check_ms":18,"zonk_ms":0},"status":"pass","tests":23,"wall_ms":2661},{"file":"test-observatory-01.rkt","status":"pass","tests":18,"wall_ms":243},{"file":"test-observatory-02.rkt","status":"pass","tests":10,"wall_ms":295},{"file":"test-parse-bridges.rkt","status":"pass","tests":23,"wall_ms":121},{"file":"test-parse-integration.rkt","status":"pass","tests":7,"wall_ms":127},{"cell_metrics":{"cells":32,"propagators":0},"file":"test-native-collection-ops.rkt","heartbeats":{"cell_allocs":848,"constraint_count":0,"constraint_retries":0,"elaborate_steps":372,"infer_steps":394,"meta_created":16,"meta_solved":16,"prop_allocs":0,"prop_firings":0,"reduce_steps":569,"resolution_cycles":16,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":109,"zonk_steps":406},"memory":{"gc_ms":68,"mem_after_bytes":167462448,"mem_before_bytes":167472016,"mem_retained_bytes":0},"phases":{"elaborate_ms":104,"parse_ms":0,"qtt_ms":10,"reduce_ms":238,"trait_resolve_ms":0,"type_check_ms":174,"zonk_ms":0},"status":"pass","tests":27,"wall_ms":4675},{"file":"test-parse-lattice.rkt","status":"pass","tests":27,"wall_ms":168},{"cell_metrics":{"cells":19,"propagators":0},"file":"test-mixfix-01.rkt","heartbeats":{"cell_allocs":177,"constraint_count":0,"constraint_retries":0,"elaborate_steps":42,"infer_steps":42,"meta_created":0,"meta_solved":0,"prop_allocs":0,"prop_firings":0,"reduce_steps":50,"resolution_cycles":0,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":2,"zonk_steps":52},"memory":{"gc_ms":78,"mem_after_bytes":201048616,"mem_before_bytes":201049952,"mem_retained_bytes":0},"phases":{"elaborate_ms":12,"parse_ms":0,"qtt_ms":1,"reduce_ms":23,"trait_resolve_ms":0,"type_check_ms":15,"zonk_ms":0},"status":"pass","tests":36,"wall_ms":7355},{"cell_metrics":{"cells":18,"propagators":0},"file":"test-mixfix-02.rkt","heartbeats":{"cell_allocs":160,"constraint_count":0,"constraint_retries":0,"elaborate_steps":81,"infer_steps":179,"meta_created":16,"meta_solved":16,"prop_allocs":0,"prop_firings":0,"reduce_steps":175,"resolution_cycles":16,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":51,"zonk_steps":189},"memory":{"gc_ms":63,"mem_after_bytes":165383200,"mem_before_bytes":165375560,"mem_retained_bytes":7640},"phases":{"elaborate_ms":48,"parse_ms":0,"qtt_ms":0,"reduce_ms":62,"trait_resolve_ms":0,"type_check_ms":185,"zonk_ms":0},"status":"pass","tests":29,"wall_ms":7171},{"file":"test-parser-relational.rkt","status":"pass","tests":29,"wall_ms":300},{"file":"test-parser.rkt","status":"pass","tests":82,"wall_ms":564},{"cell_metrics":{"cells":17,"propagators":0},"file":"test-narrow-syntax-01.rkt","heartbeats":{"cell_allocs":80,"constraint_count":0,"constraint_retries":0,"elaborate_steps":24,"infer_steps":22,"meta_created":0,"meta_solved":0,"prop_allocs":0,"prop_firings":0,"reduce_steps":60,"resolution_cycles":0,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":0,"zonk_steps":27},"memory":{"gc_ms":71,"mem_after_bytes":181487416,"mem_before_bytes":181399520,"mem_retained_bytes":87896},"phases":{"elaborate_ms":5,"parse_ms":0,"qtt_ms":0,"reduce_ms":37,"trait_resolve_ms":0,"type_check_ms":7,"zonk_ms":0},"status":"pass","tests":16,"wall_ms":6714},{"file":"test-perf-counters.rkt","status":"pass","tests":6,"wall_ms":196},{"cell_metrics":{"cells":26,"propagators":3},"file":"test-numeric-traits-01.rkt","heartbeats":{"cell_allocs":453,"constraint_count":0,"constraint_retries":0,"elaborate_steps":229,"infer_steps":273,"meta_created":10,"meta_solved":10,"prop_allocs":0,"prop_firings":0,"reduce_steps":615,"resolution_cycles":10,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":121,"zonk_steps":349},"memory":{"gc_ms":54,"mem_after_bytes":142945672,"mem_before_bytes":142908960,"mem_retained_bytes":36712},"phases":{"elaborate_ms":78,"parse_ms":0,"qtt_ms":75,"reduce_ms":383,"trait_resolve_ms":0,"type_check_ms":294,"zonk_ms":0},"status":"pass","tests":18,"wall_ms":3199},{"file":"test-phase-timing.rkt","status":"pass","tests":7,"wall_ms":590},{"cell_metrics":{"cells":24,"propagators":0},"file":"test-path-expressions.rkt","heartbeats":{"cell_allocs":324,"constraint_count":0,"constraint_retries":0,"elaborate_steps":71,"infer_steps":188,"meta_created":16,"meta_solved":16,"prop_allocs":0,"prop_firings":0,"reduce_steps":326,"resolution_cycles":16,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":34,"zonk_steps":274},"memory":{"gc_ms":62,"mem_after_bytes":165491344,"mem_before_bytes":165499464,"mem_retained_bytes":0},"phases":{"elaborate_ms":14,"parse_ms":0,"qtt_ms":8,"reduce_ms":88,"trait_resolve_ms":0,"type_check_ms":73,"zonk_ms":0},"status":"pass","tests":20,"wall_ms":1932},{"cell_metrics":{"cells":19,"propagators":0},"file":"test-narrow-syntax-02.rkt","heartbeats":{"cell_allocs":151,"constraint_count":0,"constraint_retries":0,"elaborate_steps":42,"infer_steps":43,"meta_created":1,"meta_solved":1,"prop_allocs":0,"prop_firings":0,"reduce_steps":83,"resolution_cycles":1,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":6,"zonk_steps":54},"memory":{"gc_ms":68,"mem_after_bytes":178835800,"mem_before_bytes":178785344,"mem_retained_bytes":50456},"phases":{"elaborate_ms":12,"parse_ms":0,"qtt_ms":3,"reduce_ms":49,"trait_resolve_ms":0,"type_check_ms":15,"zonk_ms":0},"status":"pass","tests":8,"wall_ms":7465},{"cell_metrics":{"cells":17,"propagators":0},"file":"test-narrowing-search-01.rkt","heartbeats":{"cell_allocs":128,"constraint_count":0,"constraint_retries":0,"elaborate_steps":36,"infer_steps":36,"meta_created":0,"meta_solved":0,"prop_allocs":0,"prop_firings":0,"reduce_steps":89,"resolution_cycles":0,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":0,"zonk_steps":44},"memory":{"gc_ms":58,"mem_after_bytes":158946000,"mem_before_bytes":157757040,"mem_retained_bytes":1188960},"phases":{"elaborate_ms":10,"parse_ms":0,"qtt_ms":0,"reduce_ms":42,"trait_resolve_ms":0,"type_check_ms":8,"zonk_ms":0},"status":"pass","tests":15,"wall_ms":7605},{"cell_metrics":{"cells":19,"propagators":0},"file":"test-narrowing-search-02.rkt","heartbeats":{"cell_allocs":139,"constraint_count":0,"constraint_retries":0,"elaborate_steps":43,"infer_steps":42,"meta_created":1,"meta_solved":1,"prop_allocs":0,"prop_firings":0,"reduce_steps":83,"resolution_cycles":1,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":6,"zonk_steps":52},"memory":{"gc_ms":72,"mem_after_bytes":198994920,"mem_before_bytes":198949816,"mem_retained_bytes":45104},"phases":{"elaborate_ms":10,"parse_ms":0,"qtt_ms":3,"reduce_ms":36,"trait_resolve_ms":0,"type_check_ms":14,"zonk_ms":0},"status":"pass","tests":7,"wall_ms":7612},{"file":"test-pipe-compose.rkt","status":"pass","tests":45,"wall_ms":197},{"cell_metrics":{"cells":23,"propagators":0},"file":"test-numeric-traits-02.rkt","heartbeats":{"cell_allocs":615,"constraint_count":0,"constraint_retries":0,"elaborate_steps":527,"infer_steps":353,"meta_created":40,"meta_solved":37,"prop_allocs":0,"prop_firings":0,"reduce_steps":690,"resolution_cycles":10,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":177,"zonk_steps":707},"memory":{"gc_ms":69,"mem_after_bytes":181812696,"mem_before_bytes":181821440,"mem_retained_bytes":0},"phases":{"elaborate_ms":409,"parse_ms":0,"qtt_ms":129,"reduce_ms":559,"trait_resolve_ms":0,"type_check_ms":621,"zonk_ms":0},"status":"pass","tests":18,"wall_ms":4816},{"cell_metrics":{"cells":17,"propagators":0},"file":"test-posit-eq.rkt","heartbeats":{"cell_allocs":128,"constraint_count":0,"constraint_retries":0,"elaborate_steps":28,"infer_steps":40,"meta_created":0,"meta_solved":0,"prop_allocs":0,"prop_firings":0,"reduce_steps":62,"resolution_cycles":0,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":4,"zonk_steps":41},"memory":{"gc_ms":56,"mem_after_bytes":158384800,"mem_before_bytes":158388744,"mem_retained_bytes":0},"phases":{"elaborate_ms":4,"parse_ms":0,"qtt_ms":0,"reduce_ms":25,"trait_resolve_ms":0,"type_check_ms":27,"zonk_ms":0},"status":"pass","tests":16,"wall_ms":1134},{"file":"test-posit-impl.rkt","status":"pass","tests":18,"wall_ms":157},{"cell_metrics":{"cells":22,"propagators":0},"file":"test-placeholder.rkt","heartbeats":{"cell_allocs":457,"constraint_count":0,"constraint_retries":0,"elaborate_steps":330,"infer_steps":274,"meta_created":0,"meta_solved":0,"prop_allocs":0,"prop_firings":0,"reduce_steps":291,"resolution_cycles":0,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":146,"zonk_steps":310},"memory":{"gc_ms":73,"mem_after_bytes":198972800,"mem_before_bytes":198994008,"mem_retained_bytes":0},"phases":{"elaborate_ms":85,"parse_ms":0,"qtt_ms":54,"reduce_ms":94,"trait_resolve_ms":0,"type_check_ms":141,"zonk_ms":0},"status":"pass","tests":20,"wall_ms":2392},{"cell_metrics":{"cells":19,"propagators":0},"file":"test-posit16.rkt","heartbeats":{"cell_allocs":255,"constraint_count":0,"constraint_retries":0,"elaborate_steps":48,"infer_steps":42,"meta_created":0,"meta_solved":0,"prop_allocs":0,"prop_firings":0,"reduce_steps":43,"resolution_cycles":0,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":10,"zonk_steps":52},"memory":{"gc_ms":58,"mem_after_bytes":159429576,"mem_before_bytes":159325008,"mem_retained_bytes":104568},"phases":{"elaborate_ms":11,"parse_ms":0,"qtt_ms":5,"reduce_ms":13,"trait_resolve_ms":0,"type_check_ms":15,"zonk_ms":0},"status":"pass","tests":23,"wall_ms":1760},{"file":"test-parse-reader.rkt","status":"pass","tests":108,"wall_ms":7224},{"cell_metrics":{"cells":17,"propagators":0},"file":"test-posit-identity.rkt","heartbeats":{"cell_allocs":215,"constraint_count":0,"constraint_retries":0,"elaborate_steps":47,"infer_steps":124,"meta_created":7,"meta_solved":7,"prop_allocs":0,"prop_firings":0,"reduce_steps":386,"resolution_cycles":7,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":37,"zonk_steps":132},"memory":{"gc_ms":70,"mem_after_bytes":181912648,"mem_before_bytes":181912832,"mem_retained_bytes":0},"phases":{"elaborate_ms":40,"parse_ms":0,"qtt_ms":0,"reduce_ms":1153,"trait_resolve_ms":0,"type_check_ms":158,"zonk_ms":0},"status":"pass","tests":13,"wall_ms":3462},{"file":"test-postfix-index-01.rkt","status":"pass","tests":11,"wall_ms":53},{"file":"test-postfix-index-02.rkt","status":"pass","tests":12,"wall_ms":54},{"cell_metrics":{"cells":19,"propagators":0},"file":"test-posit32.rkt","heartbeats":{"cell_allocs":255,"constraint_count":0,"constraint_retries":0,"elaborate_steps":48,"infer_steps":42,"meta_created":0,"meta_solved":0,"prop_allocs":0,"prop_firings":0,"reduce_steps":43,"resolution_cycles":0,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":10,"zonk_steps":52},"memory":{"gc_ms":77,"mem_after_bytes":199465360,"mem_before_bytes":199473960,"mem_retained_bytes":0},"phases":{"elaborate_ms":9,"parse_ms":0,"qtt_ms":6,"reduce_ms":13,"trait_resolve_ms":0,"type_check_ms":16,"zonk_ms":0},"status":"pass","tests":23,"wall_ms":2322},{"cell_metrics":{"cells":41,"propagators":0},"file":"test-pattern-defn-01.rkt","heartbeats":{"cell_allocs":711,"constraint_count":0,"constraint_retries":0,"elaborate_steps":206,"infer_steps":187,"meta_created":15,"meta_solved":14,"prop_allocs":0,"prop_firings":0,"reduce_steps":215,"resolution_cycles":14,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":44,"zonk_steps":258},"memory":{"gc_ms":69,"mem_after_bytes":166838664,"mem_before_bytes":167069048,"mem_retained_bytes":0},"phases":{"elaborate_ms":52,"parse_ms":0,"qtt_ms":22,"reduce_ms":120,"trait_resolve_ms":0,"type_check_ms":100,"zonk_ms":0},"status":"pass","tests":14,"wall_ms":7365},{"cell_metrics":{"cells":19,"propagators":0},"file":"test-posit64.rkt","heartbeats":{"cell_allocs":255,"constraint_count":0,"constraint_retries":0,"elaborate_steps":48,"infer_steps":42,"meta_created":0,"meta_solved":0,"prop_allocs":0,"prop_firings":0,"reduce_steps":43,"resolution_cycles":0,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":10,"zonk_steps":52},"memory":{"gc_ms":60,"mem_after_bytes":159917304,"mem_before_bytes":159871112,"mem_retained_bytes":46192},"phases":{"elaborate_ms":6,"parse_ms":0,"qtt_ms":7,"reduce_ms":10,"trait_resolve_ms":0,"type_check_ms":15,"zonk_ms":0},"status":"pass","tests":23,"wall_ms":1899},{"cell_metrics":{"cells":27,"propagators":0},"file":"test-pipe-compose-e2e-01.rkt","heartbeats":{"cell_allocs":244,"constraint_count":0,"constraint_retries":0,"elaborate_steps":92,"infer_steps":115,"meta_created":0,"meta_solved":0,"prop_allocs":0,"prop_firings":0,"reduce_steps":39,"resolution_cycles":0,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":59,"zonk_steps":100},"memory":{"gc_ms":62,"mem_after_bytes":161063312,"mem_before_bytes":160992264,"mem_retained_bytes":71048},"phases":{"elaborate_ms":24,"parse_ms":0,"qtt_ms":78,"reduce_ms":9,"trait_resolve_ms":0,"type_check_ms":100,"zonk_ms":0},"status":"pass","tests":5,"wall_ms":7062},{"cell_metrics":{"cells":19,"propagators":0},"file":"test-posit8.rkt","heartbeats":{"cell_allocs":255,"constraint_count":0,"constraint_retries":0,"elaborate_steps":48,"infer_steps":42,"meta_created":0,"meta_solved":0,"prop_allocs":0,"prop_firings":0,"reduce_steps":43,"resolution_cycles":0,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":10,"zonk_steps":52},"memory":{"gc_ms":65,"mem_after_bytes":170136072,"mem_before_bytes":170145016,"mem_retained_bytes":0},"phases":{"elaborate_ms":16,"parse_ms":0,"qtt_ms":5,"reduce_ms":16,"trait_resolve_ms":0,"type_check_ms":19,"zonk_ms":0},"status":"pass","tests":23,"wall_ms":2120},{"cell_metrics":{"cells":21,"propagators":0},"file":"test-prelude-numerics.rkt","heartbeats":{"cell_allocs":186,"constraint_count":0,"constraint_retries":0,"elaborate_steps":69,"infer_steps":50,"meta_created":2,"meta_solved":2,"prop_allocs":0,"prop_firings":0,"reduce_steps":51,"resolution_cycles":2,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":34,"zonk_steps":93},"memory":{"gc_ms":68,"mem_after_bytes":166659360,"mem_before_bytes":166643112,"mem_retained_bytes":16248},"phases":{"elaborate_ms":28,"parse_ms":0,"qtt_ms":31,"reduce_ms":13,"trait_resolve_ms":0,"type_check_ms":53,"zonk_ms":0},"status":"pass","tests":9,"wall_ms":1513},{"file":"test-prelude.rkt","status":"pass","tests":41,"wall_ms":159},{"file":"test-pretty-print.rkt","status":"pass","tests":41,"wall_ms":215},{"file":"test-process-parse-01.rkt","status":"pass","tests":17,"wall_ms":219},{"cell_metrics":{"cells":22,"propagators":0},"file":"test-process-ws-01.rkt","heartbeats":{"cell_allocs":95,"constraint_count":0,"constraint_retries":0,"elaborate_steps":8,"infer_steps":2,"meta_created":0,"meta_solved":0,"prop_allocs":0,"prop_firings":0,"reduce_steps":2,"resolution_cycles":0,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":0,"zonk_steps":0},"memory":{"gc_ms":63,"mem_after_bytes":167544424,"mem_before_bytes":167543248,"mem_retained_bytes":1176},"phases":{"elaborate_ms":5,"parse_ms":0,"qtt_ms":0,"reduce_ms":0,"trait_resolve_ms":0,"type_check_ms":2,"zonk_ms":0},"status":"pass","tests":24,"wall_ms":576},{"file":"test-propagator-bsp.rkt","status":"pass","tests":18,"wall_ms":171},{"file":"test-propagator-descending-01.rkt","status":"pass","tests":15,"wall_ms":4},{"cell_metrics":{"cells":62,"propagators":0},"file":"test-pattern-defn-02.rkt","heartbeats":{"cell_allocs":1729,"constraint_count":0,"constraint_retries":0,"elaborate_steps":386,"infer_steps":391,"meta_created":25,"meta_solved":24,"prop_allocs":0,"prop_firings":0,"reduce_steps":418,"resolution_cycles":24,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":101,"zonk_steps":521},"memory":{"gc_ms":97,"mem_after_bytes":221067280,"mem_before_bytes":221047968,"mem_retained_bytes":19312},"phases":{"elaborate_ms":137,"parse_ms":0,"qtt_ms":28,"reduce_ms":318,"trait_resolve_ms":0,"type_check_ms":251,"zonk_ms":0},"status":"pass","tests":14,"wall_ms":9781},{"cell_metrics":{"cells":29,"propagators":0},"file":"test-prelude-collections.rkt","heartbeats":{"cell_allocs":473,"constraint_count":0,"constraint_retries":0,"elaborate_steps":72,"infer_steps":67,"meta_created":1,"meta_solved":0,"prop_allocs":0,"prop_firings":0,"reduce_steps":34,"resolution_cycles":0,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":19,"zonk_steps":143},"memory":{"gc_ms":83,"mem_after_bytes":199716120,"mem_before_bytes":199715728,"mem_retained_bytes":392},"phases":{"elaborate_ms":23,"parse_ms":0,"qtt_ms":6,"reduce_ms":0,"trait_resolve_ms":0,"type_check_ms":27,"zonk_ms":0},"status":"pass","tests":17,"wall_ms":3373},{"file":"test-propagator-network.rkt","status":"pass","tests":16,"wall_ms":134},{"file":"test-propagator-persistence.rkt","status":"pass","tests":17,"wall_ms":174},{"file":"test-propagator-types.rkt","status":"pass","tests":32,"wall_ms":320},{"file":"test-propagator.rkt","status":"pass","tests":27,"wall_ms":2},{"cell_metrics":{"cells":27,"propagators":0},"file":"test-process-ws-02.rkt","heartbeats":{"cell_allocs":319,"constraint_count":0,"constraint_retries":0,"elaborate_steps":23,"infer_steps":6,"meta_created":0,"meta_solved":0,"prop_allocs":0,"prop_firings":0,"reduce_steps":6,"resolution_cycles":0,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":0,"zonk_steps":0},"memory":{"gc_ms":70,"mem_after_bytes":171459504,"mem_before_bytes":171460776,"mem_retained_bytes":0},"phases":{"elaborate_ms":7,"parse_ms":0,"qtt_ms":0,"reduce_ms":0,"trait_resolve_ms":0,"type_check_ms":2,"zonk_ms":0},"status":"pass","tests":7,"wall_ms":1844},{"cell_metrics":{"cells":29,"propagators":0},"file":"test-pipe-compose-e2e-03.rkt","heartbeats":{"cell_allocs":223,"constraint_count":0,"constraint_retries":0,"elaborate_steps":113,"infer_steps":137,"meta_created":0,"meta_solved":0,"prop_allocs":0,"prop_firings":0,"reduce_steps":51,"resolution_cycles":0,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":59,"zonk_steps":131},"memory":{"gc_ms":83,"mem_after_bytes":197549832,"mem_before_bytes":196583128,"mem_retained_bytes":966704},"phases":{"elaborate_ms":29,"parse_ms":0,"qtt_ms":83,"reduce_ms":14,"trait_resolve_ms":0,"type_check_ms":92,"zonk_ms":0},"status":"pass","tests":4,"wall_ms":9707},{"cell_metrics":{"cells":28,"propagators":0},"file":"test-pipe-compose-e2e-02a.rkt","heartbeats":{"cell_allocs":301,"constraint_count":0,"constraint_retries":0,"elaborate_steps":118,"infer_steps":139,"meta_created":0,"meta_solved":0,"prop_allocs":0,"prop_firings":0,"reduce_steps":55,"resolution_cycles":0,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":59,"zonk_steps":136},"memory":{"gc_ms":80,"mem_after_bytes":200832592,"mem_before_bytes":199848136,"mem_retained_bytes":984456},"phases":{"elaborate_ms":33,"parse_ms":0,"qtt_ms":77,"reduce_ms":19,"trait_resolve_ms":0,"type_check_ms":85,"zonk_ms":0},"status":"pass","tests":7,"wall_ms":10062},{"file":"test-provenance.rkt","status":"pass","tests":8,"wall_ms":67},{"cell_metrics":{"cells":19,"propagators":0},"file":"test-prelude-system-02.rkt","heartbeats":{"cell_allocs":382,"constraint_count":0,"constraint_retries":0,"elaborate_steps":103,"infer_steps":156,"meta_created":0,"meta_solved":0,"prop_allocs":0,"prop_firings":0,"reduce_steps":267,"resolution_cycles":0,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":41,"zonk_steps":102},"memory":{"gc_ms":60,"mem_after_bytes":160992976,"mem_before_bytes":160995312,"mem_retained_bytes":0},"phases":{"elaborate_ms":32,"parse_ms":0,"qtt_ms":0,"reduce_ms":205,"trait_resolve_ms":0,"type_check_ms":185,"zonk_ms":0},"status":"pass","tests":16,"wall_ms":3615},{"file":"test-properties.rkt","status":"pass","tests":13,"wall_ms":1146},{"cell_metrics":{"cells":25,"propagators":0},"file":"test-propagator-integration.rkt","heartbeats":{"cell_allocs":619,"constraint_count":0,"constraint_retries":0,"elaborate_steps":142,"infer_steps":150,"meta_created":0,"meta_solved":0,"prop_allocs":0,"prop_firings":0,"reduce_steps":153,"resolution_cycles":0,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":83,"zonk_steps":123},"memory":{"gc_ms":70,"mem_after_bytes":169322160,"mem_before_bytes":169262104,"mem_retained_bytes":60056},"phases":{"elaborate_ms":39,"parse_ms":0,"qtt_ms":35,"reduce_ms":24,"trait_resolve_ms":0,"type_check_ms":81,"zonk_ms":0},"status":"pass","tests":16,"wall_ms":2623},{"cell_metrics":{"cells":25,"propagators":0},"file":"test-propagator-lvar.rkt","heartbeats":{"cell_allocs":737,"constraint_count":0,"constraint_retries":0,"elaborate_steps":180,"infer_steps":223,"meta_created":4,"meta_solved":4,"prop_allocs":0,"prop_firings":0,"reduce_steps":278,"resolution_cycles":4,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":136,"zonk_steps":224},"memory":{"gc_ms":91,"mem_after_bytes":220935712,"mem_before_bytes":220902728,"mem_retained_bytes":32984},"phases":{"elaborate_ms":58,"parse_ms":0,"qtt_ms":62,"reduce_ms":75,"trait_resolve_ms":0,"type_check_ms":152,"zonk_ms":0},"status":"pass","tests":8,"wall_ms":2316},{"cell_metrics":{"cells":21,"propagators":3},"file":"test-prelude-system-01.rkt","heartbeats":{"cell_allocs":302,"constraint_count":0,"constraint_retries":0,"elaborate_steps":94,"infer_steps":222,"meta_created":21,"meta_solved":21,"prop_allocs":0,"prop_firings":0,"reduce_steps":785,"resolution_cycles":19,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":60,"zonk_steps":208},"memory":{"gc_ms":79,"mem_after_bytes":160229040,"mem_before_bytes":160188136,"mem_retained_bytes":40904},"phases":{"elaborate_ms":203,"parse_ms":0,"qtt_ms":0,"reduce_ms":2148,"trait_resolve_ms":0,"type_check_ms":399,"zonk_ms":0},"status":"pass","tests":15,"wall_ms":5311},{"cell_metrics":{"cells":21,"propagators":0},"file":"test-pvec-ops-eval.rkt","heartbeats":{"cell_allocs":673,"constraint_count":0,"constraint_retries":0,"elaborate_steps":209,"infer_steps":241,"meta_created":4,"meta_solved":4,"prop_allocs":0,"prop_firings":0,"reduce_steps":147,"resolution_cycles":4,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":40,"zonk_steps":165},"memory":{"gc_ms":83,"mem_after_bytes":207730592,"mem_before_bytes":207734576,"mem_retained_bytes":0},"phases":{"elaborate_ms":87,"parse_ms":0,"qtt_ms":14,"reduce_ms":13,"trait_resolve_ms":0,"type_check_ms":154,"zonk_ms":0},"status":"pass","tests":13,"wall_ms":3049},{"file":"test-qtt.rkt","status":"pass","tests":27,"wall_ms":200},{"file":"test-provenance-errors.rkt","status":"pass","tests":26,"wall_ms":3938},{"cell_metrics":{"cells":19,"propagators":0},"file":"test-pvec-traits.rkt","heartbeats":{"cell_allocs":452,"constraint_count":0,"constraint_retries":0,"elaborate_steps":119,"infer_steps":122,"meta_created":0,"meta_solved":0,"prop_allocs":0,"prop_firings":0,"reduce_steps":206,"resolution_cycles":0,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":28,"zonk_steps":218},"memory":{"gc_ms":66,"mem_after_bytes":169449480,"mem_before_bytes":169451944,"mem_retained_bytes":0},"phases":{"elaborate_ms":37,"parse_ms":0,"qtt_ms":1,"reduce_ms":160,"trait_resolve_ms":0,"type_check_ms":80,"zonk_ms":0},"status":"pass","tests":17,"wall_ms":3280},{"cell_metrics":{"cells":17,"propagators":0},"file":"test-qtt-pipeline.rkt","heartbeats":{"cell_allocs":470,"constraint_count":0,"constraint_retries":0,"elaborate_steps":155,"infer_steps":127,"meta_created":0,"meta_solved":0,"prop_allocs":0,"prop_firings":0,"reduce_steps":169,"resolution_cycles":0,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":77,"zonk_steps":160},"memory":{"gc_ms":60,"mem_after_bytes":160554752,"mem_before_bytes":160557440,"mem_retained_bytes":0},"phases":{"elaborate_ms":40,"parse_ms":0,"qtt_ms":44,"reduce_ms":56,"trait_resolve_ms":0,"type_check_ms":68,"zonk_ms":1},"status":"pass","tests":19,"wall_ms":3053},{"file":"test-reader-relational.rkt","status":"pass","tests":10,"wall_ms":64},{"cell_metrics":{"cells":25,"propagators":0},"file":"test-postfix-index-03.rkt","heartbeats":{"cell_allocs":606,"constraint_count":0,"constraint_retries":0,"elaborate_steps":168,"infer_steps":337,"meta_created":50,"meta_solved":50,"prop_allocs":0,"prop_firings":0,"reduce_steps":417,"resolution_cycles":50,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":150,"zonk_steps":446},"memory":{"gc_ms":84,"mem_after_bytes":200311704,"mem_before_bytes":200229400,"mem_retained_bytes":82304},"phases":{"elaborate_ms":102,"parse_ms":0,"qtt_ms":284,"reduce_ms":71,"trait_resolve_ms":0,"type_check_ms":305,"zonk_ms":1},"status":"pass","tests":12,"wall_ms":9062},{"file":"test-readiness-propagator.rkt","status":"pass","tests":21,"wall_ms":3},{"file":"test-reader.rkt","status":"pass","tests":70,"wall_ms":400},{"cell_metrics":{"cells":63,"propagators":0},"file":"test-property-ws.rkt","heartbeats":{"cell_allocs":8806,"constraint_count":0,"constraint_retries":0,"elaborate_steps":1892,"infer_steps":1483,"meta_created":66,"meta_solved":26,"prop_allocs":0,"prop_firings":0,"reduce_steps":1303,"resolution_cycles":26,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":900,"zonk_steps":1262},"memory":{"gc_ms":84,"mem_after_bytes":173714768,"mem_before_bytes":173682504,"mem_retained_bytes":32264},"phases":{"elaborate_ms":751,"parse_ms":0,"qtt_ms":719,"reduce_ms":0,"trait_resolve_ms":0,"type_check_ms":1704,"zonk_ms":5},"status":"pass","tests":12,"wall_ms":5718},{"cell_metrics":{"cells":22,"propagators":0},"file":"test-pvec-fold.rkt","heartbeats":{"cell_allocs":299,"constraint_count":0,"constraint_retries":0,"elaborate_steps":188,"infer_steps":273,"meta_created":15,"meta_solved":15,"prop_allocs":0,"prop_firings":0,"reduce_steps":1296,"resolution_cycles":15,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":112,"zonk_steps":267},"memory":{"gc_ms":65,"mem_after_bytes":161140800,"mem_before_bytes":161179304,"mem_retained_bytes":0},"phases":{"elaborate_ms":67,"parse_ms":0,"qtt_ms":11,"reduce_ms":2687,"trait_resolve_ms":0,"type_check_ms":170,"zonk_ms":0},"status":"pass","tests":13,"wall_ms":5030},{"file":"test-reduction.rkt","status":"pass","tests":27,"wall_ms":213},{"cell_metrics":{"cells":17,"propagators":0},"file":"test-reduction-perf-01-01.rkt","heartbeats":{"cell_allocs":64,"constraint_count":0,"constraint_retries":0,"elaborate_steps":8,"infer_steps":10,"meta_created":0,"meta_solved":0,"prop_allocs":0,"prop_firings":0,"reduce_steps":12,"resolution_cycles":0,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":2,"zonk_steps":12},"memory":{"gc_ms":70,"mem_after_bytes":171923752,"mem_before_bytes":171859016,"mem_retained_bytes":64736},"phases":{"elaborate_ms":4,"parse_ms":0,"qtt_ms":0,"reduce_ms":8,"trait_resolve_ms":0,"type_check_ms":3,"zonk_ms":0},"status":"pass","tests":4,"wall_ms":706},{"cell_metrics":{"cells":20,"propagators":0},"file":"test-pvec.rkt","heartbeats":{"cell_allocs":496,"constraint_count":0,"constraint_retries":0,"elaborate_steps":180,"infer_steps":155,"meta_created":5,"meta_solved":4,"prop_allocs":0,"prop_firings":0,"reduce_steps":250,"resolution_cycles":4,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":18,"zonk_steps":188},"memory":{"gc_ms":90,"mem_after_bytes":221613240,"mem_before_bytes":221616080,"mem_retained_bytes":0},"phases":{"elaborate_ms":56,"parse_ms":0,"qtt_ms":3,"reduce_ms":68,"trait_resolve_ms":0,"type_check_ms":71,"zonk_ms":0},"status":"pass","tests":48,"wall_ms":5100},{"cell_metrics":{"cells":18,"propagators":0},"file":"test-rat.rkt","heartbeats":{"cell_allocs":340,"constraint_count":0,"constraint_retries":0,"elaborate_steps":49,"infer_steps":48,"meta_created":0,"meta_solved":0,"prop_allocs":0,"prop_firings":0,"reduce_steps":50,"resolution_cycles":0,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":3,"zonk_steps":63},"memory":{"gc_ms":67,"mem_after_bytes":170078776,"mem_before_bytes":170062160,"mem_retained_bytes":16616},"phases":{"elaborate_ms":15,"parse_ms":0,"qtt_ms":0,"reduce_ms":21,"trait_resolve_ms":0,"type_check_ms":17,"zonk_ms":0},"status":"pass","tests":31,"wall_ms":3210},{"cell_metrics":{"cells":18,"propagators":0},"file":"test-quire.rkt","heartbeats":{"cell_allocs":315,"constraint_count":0,"constraint_retries":0,"elaborate_steps":61,"infer_steps":77,"meta_created":0,"meta_solved":0,"prop_allocs":0,"prop_firings":0,"reduce_steps":57,"resolution_cycles":0,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":28,"zonk_steps":54},"memory":{"gc_ms":84,"mem_after_bytes":208573088,"mem_before_bytes":208576744,"mem_retained_bytes":0},"phases":{"elaborate_ms":18,"parse_ms":0,"qtt_ms":3,"reduce_ms":18,"trait_resolve_ms":0,"type_check_ms":32,"zonk_ms":0},"status":"pass","tests":31,"wall_ms":3669},{"cell_metrics":{"cells":31,"propagators":0},"file":"test-pipe-compose-e2e-02b.rkt","heartbeats":{"cell_allocs":599,"constraint_count":0,"constraint_retries":0,"elaborate_steps":240,"infer_steps":373,"meta_created":15,"meta_solved":15,"prop_allocs":0,"prop_firings":0,"reduce_steps":944,"resolution_cycles":15,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":170,"zonk_steps":372},"memory":{"gc_ms":74,"mem_after_bytes":183734184,"mem_before_bytes":183732072,"mem_retained_bytes":2112},"phases":{"elaborate_ms":136,"parse_ms":0,"qtt_ms":172,"reduce_ms":6732,"trait_resolve_ms":0,"type_check_ms":404,"zonk_ms":0},"status":"pass","tests":8,"wall_ms":17743},{"file":"test-relational-types.rkt","status":"pass","tests":62,"wall_ms":491},{"file":"test-relations-runtime.rkt","status":"pass","tests":15,"wall_ms":120},{"file":"test-retraction-stratum.rkt","status":"pass","tests":39,"wall_ms":306},{"cell_metrics":{"cells":22,"propagators":0},"file":"test-quote.rkt","heartbeats":{"cell_allocs":421,"constraint_count":0,"constraint_retries":0,"elaborate_steps":85,"infer_steps":154,"meta_created":0,"meta_solved":0,"prop_allocs":0,"prop_firings":0,"reduce_steps":97,"resolution_cycles":0,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":31,"zonk_steps":63},"memory":{"gc_ms":85,"mem_after_bytes":197568880,"mem_before_bytes":197578576,"mem_retained_bytes":0},"phases":{"elaborate_ms":27,"parse_ms":0,"qtt_ms":2,"reduce_ms":18,"trait_resolve_ms":0,"type_check_ms":95,"zonk_ms":0},"status":"fail","tests":50,"wall_ms":4519},{"cell_metrics":{"cells":25,"propagators":0},"file":"test-punify-integration.rkt","heartbeats":{"cell_allocs":725,"constraint_count":0,"constraint_retries":0,"elaborate_steps":138,"infer_steps":283,"meta_created":41,"meta_solved":39,"prop_allocs":0,"prop_firings":0,"reduce_steps":514,"resolution_cycles":38,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":97,"zonk_steps":303},"memory":{"gc_ms":85,"mem_after_bytes":200526520,"mem_before_bytes":200433504,"mem_retained_bytes":93016},"phases":{"elaborate_ms":188,"parse_ms":0,"qtt_ms":37,"reduce_ms":867,"trait_resolve_ms":0,"type_check_ms":338,"zonk_ms":0},"status":"pass","tests":24,"wall_ms":8447},{"cell_metrics":{"cells":24,"propagators":0},"file":"test-reducible-01.rkt","heartbeats":{"cell_allocs":354,"constraint_count":0,"constraint_retries":0,"elaborate_steps":124,"infer_steps":244,"meta_created":14,"meta_solved":14,"prop_allocs":0,"prop_firings":0,"reduce_steps":702,"resolution_cycles":14,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":123,"zonk_steps":371},"memory":{"gc_ms":83,"mem_after_bytes":200520632,"mem_before_bytes":200514224,"mem_retained_bytes":6408},"phases":{"elaborate_ms":95,"parse_ms":0,"qtt_ms":43,"reduce_ms":2047,"trait_resolve_ms":0,"type_check_ms":625,"zonk_ms":0},"status":"pass","tests":12,"wall_ms":5146},{"cell_metrics":{"cells":23,"propagators":0},"file":"test-schema-registry.rkt","heartbeats":{"cell_allocs":60,"constraint_count":0,"constraint_retries":0,"elaborate_steps":3,"infer_steps":0,"meta_created":0,"meta_solved":0,"prop_allocs":0,"prop_firings":0,"reduce_steps":0,"resolution_cycles":0,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":0,"zonk_steps":3},"memory":{"gc_ms":79,"mem_after_bytes":200623640,"mem_before_bytes":200617688,"mem_retained_bytes":5952},"phases":{"elaborate_ms":0,"parse_ms":0,"qtt_ms":0,"reduce_ms":0,"trait_resolve_ms":0,"type_check_ms":0,"zonk_ms":0},"status":"pass","tests":12,"wall_ms":845},{"cell_metrics":{"cells":51,"propagators":0},"file":"test-relational-e2e.rkt","heartbeats":{"cell_allocs":1192,"constraint_count":0,"constraint_retries":0,"elaborate_steps":213,"infer_steps":256,"meta_created":0,"meta_solved":0,"prop_allocs":0,"prop_firings":0,"reduce_steps":136,"resolution_cycles":0,"solver_backtracks":32,"solver_unifies":91,"trait_resolve_steps":0,"unify_steps":0,"zonk_steps":269},"memory":{"gc_ms":66,"mem_after_bytes":170600800,"mem_before_bytes":170600680,"mem_retained_bytes":120},"phases":{"elaborate_ms":76,"parse_ms":0,"qtt_ms":0,"reduce_ms":73,"trait_resolve_ms":0,"type_check_ms":84,"zonk_ms":0},"status":"pass","tests":15,"wall_ms":2744},{"cell_metrics":{"cells":41,"propagators":0},"file":"test-schema-e2e.rkt","heartbeats":{"cell_allocs":978,"constraint_count":0,"constraint_retries":0,"elaborate_steps":130,"infer_steps":135,"meta_created":22,"meta_solved":0,"prop_allocs":0,"prop_firings":0,"reduce_steps":44,"resolution_cycles":0,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":21,"zonk_steps":120},"memory":{"gc_ms":77,"mem_after_bytes":184656624,"mem_before_bytes":184660280,"mem_retained_bytes":0},"phases":{"elaborate_ms":49,"parse_ms":0,"qtt_ms":26,"reduce_ms":0,"trait_resolve_ms":0,"type_check_ms":54,"zonk_ms":0},"status":"pass","tests":11,"wall_ms":2189},{"file":"test-selection-parsing.rkt","status":"pass","tests":13,"wall_ms":287},{"cell_metrics":{"cells":25,"propagators":0},"file":"test-schema-types.rkt","heartbeats":{"cell_allocs":548,"constraint_count":0,"constraint_retries":0,"elaborate_steps":99,"infer_steps":101,"meta_created":18,"meta_solved":0,"prop_allocs":0,"prop_firings":0,"reduce_steps":34,"resolution_cycles":0,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":15,"zonk_steps":76},"memory":{"gc_ms":93,"mem_after_bytes":200843904,"mem_before_bytes":200852344,"mem_retained_bytes":0},"phases":{"elaborate_ms":88,"parse_ms":0,"qtt_ms":23,"reduce_ms":0,"trait_resolve_ms":0,"type_check_ms":96,"zonk_ms":0},"status":"pass","tests":14,"wall_ms":3518},{"cell_metrics":{"cells":64,"propagators":0},"file":"test-selection-compose.rkt","heartbeats":{"cell_allocs":1215,"constraint_count":0,"constraint_retries":0,"elaborate_steps":71,"infer_steps":62,"meta_created":4,"meta_solved":0,"prop_allocs":0,"prop_firings":0,"reduce_steps":32,"resolution_cycles":0,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":24,"zonk_steps":70},"memory":{"gc_ms":83,"mem_after_bytes":170715784,"mem_before_bytes":170719000,"mem_retained_bytes":0},"phases":{"elaborate_ms":54,"parse_ms":0,"qtt_ms":78,"reduce_ms":0,"trait_resolve_ms":0,"type_check_ms":75,"zonk_ms":2},"status":"pass","tests":12,"wall_ms":3642},{"cell_metrics":{"cells":17,"propagators":0},"file":"test-refined-rat.rkt","heartbeats":{"cell_allocs":288,"constraint_count":0,"constraint_retries":0,"elaborate_steps":98,"infer_steps":218,"meta_created":0,"meta_solved":0,"prop_allocs":0,"prop_firings":0,"reduce_steps":451,"resolution_cycles":0,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":50,"zonk_steps":196},"memory":{"gc_ms":84,"mem_after_bytes":173693872,"mem_before_bytes":172978232,"mem_retained_bytes":715640},"phases":{"elaborate_ms":39,"parse_ms":0,"qtt_ms":0,"reduce_ms":600,"trait_resolve_ms":0,"type_check_ms":302,"zonk_ms":1},"status":"pass","tests":18,"wall_ms":7813},{"file":"test-sess-inference.rkt","status":"pass","tests":29,"wall_ms":839},{"cell_metrics":{"cells":17,"propagators":0},"file":"test-resolution-confluence-01.rkt","heartbeats":{"cell_allocs":640,"constraint_count":0,"constraint_retries":0,"elaborate_steps":102,"infer_steps":155,"meta_created":0,"meta_solved":0,"prop_allocs":0,"prop_firings":0,"reduce_steps":1269,"resolution_cycles":0,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":11,"zonk_steps":164},"memory":{"gc_ms":106,"mem_after_bytes":210069328,"mem_before_bytes":210049672,"mem_retained_bytes":19656},"phases":{"elaborate_ms":46,"parse_ms":0,"qtt_ms":0,"reduce_ms":2776,"trait_resolve_ms":0,"type_check_ms":165,"zonk_ms":0},"status":"pass","tests":19,"wall_ms":8347},{"cell_metrics":{"cells":37,"propagators":0},"file":"test-selection-registry.rkt","heartbeats":{"cell_allocs":578,"constraint_count":0,"constraint_retries":0,"elaborate_steps":10,"infer_steps":1,"meta_created":0,"meta_solved":0,"prop_allocs":0,"prop_firings":0,"reduce_steps":0,"resolution_cycles":0,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":0,"zonk_steps":10},"memory":{"gc_ms":95,"mem_after_bytes":201172208,"mem_before_bytes":201169896,"mem_retained_bytes":2312},"phases":{"elaborate_ms":8,"parse_ms":0,"qtt_ms":0,"reduce_ms":0,"trait_resolve_ms":0,"type_check_ms":0,"zonk_ms":0},"status":"pass","tests":10,"wall_ms":3262},{"cell_metrics":{"cells":24,"propagators":0},"file":"test-session-async-01.rkt","heartbeats":{"cell_allocs":225,"constraint_count":0,"constraint_retries":0,"elaborate_steps":13,"infer_steps":2,"meta_created":0,"meta_solved":0,"prop_allocs":0,"prop_firings":0,"reduce_steps":2,"resolution_cycles":0,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":0,"zonk_steps":0},"memory":{"gc_ms":84,"mem_after_bytes":173037856,"mem_before_bytes":173030488,"mem_retained_bytes":7368},"phases":{"elaborate_ms":4,"parse_ms":0,"qtt_ms":0,"reduce_ms":0,"trait_resolve_ms":0,"type_check_ms":5,"zonk_ms":0},"status":"pass","tests":21,"wall_ms":2131},{"cell_metrics":{"cells":77,"propagators":0},"file":"test-schema-properties.rkt","heartbeats":{"cell_allocs":2454,"constraint_count":0,"constraint_retries":0,"elaborate_steps":349,"infer_steps":323,"meta_created":38,"meta_solved":10,"prop_allocs":0,"prop_firings":0,"reduce_steps":419,"resolution_cycles":10,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":83,"zonk_steps":404},"memory":{"gc_ms":92,"mem_after_bytes":198198504,"mem_before_bytes":198192488,"mem_retained_bytes":6016},"phases":{"elaborate_ms":250,"parse_ms":0,"qtt_ms":198,"reduce_ms":233,"trait_resolve_ms":0,"type_check_ms":281,"zonk_ms":0},"status":"pass","tests":30,"wall_ms":8644},{"cell_metrics":{"cells":33,"propagators":0},"file":"test-selection-typing.rkt","heartbeats":{"cell_allocs":746,"constraint_count":0,"constraint_retries":0,"elaborate_steps":121,"infer_steps":131,"meta_created":18,"meta_solved":0,"prop_allocs":0,"prop_firings":0,"reduce_steps":61,"resolution_cycles":0,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":27,"zonk_steps":118},"memory":{"gc_ms":84,"mem_after_bytes":170976472,"mem_before_bytes":170978256,"mem_retained_bytes":0},"phases":{"elaborate_ms":72,"parse_ms":0,"qtt_ms":36,"reduce_ms":0,"trait_resolve_ms":0,"type_check_ms":83,"zonk_ms":1},"status":"pass","tests":12,"wall_ms":3433},{"cell_metrics":{"cells":17,"propagators":0},"file":"test-refined-int.rkt","heartbeats":{"cell_allocs":476,"constraint_count":0,"constraint_retries":0,"elaborate_steps":129,"infer_steps":274,"meta_created":0,"meta_solved":0,"prop_allocs":0,"prop_firings":0,"reduce_steps":520,"resolution_cycles":0,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":67,"zonk_steps":248},"memory":{"gc_ms":71,"mem_after_bytes":163366616,"mem_before_bytes":162497176,"mem_retained_bytes":869440},"phases":{"elaborate_ms":85,"parse_ms":0,"qtt_ms":5,"reduce_ms":874,"trait_resolve_ms":0,"type_check_ms":508,"zonk_ms":0},"status":"pass","tests":26,"wall_ms":11415},{"file":"test-session-deadlock-01.rkt","status":"pass","tests":9,"wall_ms":516},{"cell_metrics":{"cells":25,"propagators":0},"file":"test-session-boundary-01.rkt","heartbeats":{"cell_allocs":296,"constraint_count":0,"constraint_retries":0,"elaborate_steps":12,"infer_steps":0,"meta_created":0,"meta_solved":0,"prop_allocs":0,"prop_firings":0,"reduce_steps":0,"resolution_cycles":0,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":0,"zonk_steps":0},"memory":{"gc_ms":80,"mem_after_bytes":173314848,"mem_before_bytes":173312536,"mem_retained_bytes":2312},"phases":{"elaborate_ms":6,"parse_ms":0,"qtt_ms":0,"reduce_ms":0,"trait_resolve_ms":0,"type_check_ms":0,"zonk_ms":0},"status":"pass","tests":13,"wall_ms":1155},{"cell_metrics":{"cells":17,"propagators":0},"file":"test-refined-subtyping.rkt","heartbeats":{"cell_allocs":472,"constraint_count":0,"constraint_retries":0,"elaborate_steps":83,"infer_steps":115,"meta_created":0,"meta_solved":0,"prop_allocs":0,"prop_firings":0,"reduce_steps":189,"resolution_cycles":0,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":43,"zonk_steps":120},"memory":{"gc_ms":98,"mem_after_bytes":223251592,"mem_before_bytes":223216896,"mem_retained_bytes":34696},"phases":{"elaborate_ms":36,"parse_ms":0,"qtt_ms":25,"reduce_ms":130,"trait_resolve_ms":0,"type_check_ms":134,"zonk_ms":0},"status":"pass","tests":18,"wall_ms":12075},{"cell_metrics":{"cells":23,"propagators":0},"file":"test-session-caps-02.rkt","heartbeats":{"cell_allocs":487,"constraint_count":0,"constraint_retries":0,"elaborate_steps":20,"infer_steps":4,"meta_created":0,"meta_solved":0,"prop_allocs":0,"prop_firings":0,"reduce_steps":4,"resolution_cycles":0,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":0,"zonk_steps":0},"memory":{"gc_ms":74,"mem_after_bytes":171144352,"mem_before_bytes":171081168,"mem_retained_bytes":63184},"phases":{"elaborate_ms":11,"parse_ms":0,"qtt_ms":0,"reduce_ms":0,"trait_resolve_ms":0,"type_check_ms":1,"zonk_ms":0},"status":"pass","tests":6,"wall_ms":1317},{"cell_metrics":{"cells":23,"propagators":0},"file":"test-session-e2e-ws.rkt","heartbeats":{"cell_allocs":329,"constraint_count":0,"constraint_retries":0,"elaborate_steps":22,"infer_steps":6,"meta_created":0,"meta_solved":0,"prop_allocs":0,"prop_firings":0,"reduce_steps":6,"resolution_cycles":0,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":0,"zonk_steps":0},"memory":{"gc_ms":70,"mem_after_bytes":164758000,"mem_before_bytes":164691064,"mem_retained_bytes":66936},"phases":{"elaborate_ms":8,"parse_ms":0,"qtt_ms":0,"reduce_ms":0,"trait_resolve_ms":0,"type_check_ms":6,"zonk_ms":0},"status":"pass","tests":4,"wall_ms":761},{"cell_metrics":{"cells":24,"propagators":0},"file":"test-session-async-ws-01.rkt","heartbeats":{"cell_allocs":239,"constraint_count":0,"constraint_retries":0,"elaborate_steps":15,"infer_steps":2,"meta_created":0,"meta_solved":0,"prop_allocs":0,"prop_firings":0,"reduce_steps":2,"resolution_cycles":0,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":0,"zonk_steps":0},"memory":{"gc_ms":88,"mem_after_bytes":201408752,"mem_before_bytes":201408744,"mem_retained_bytes":8},"phases":{"elaborate_ms":3,"parse_ms":0,"qtt_ms":0,"reduce_ms":0,"trait_resolve_ms":0,"type_check_ms":3,"zonk_ms":0},"status":"pass","tests":9,"wall_ms":2212},{"file":"test-session-errors-01.rkt","status":"pass","tests":10,"wall_ms":461},{"cell_metrics":{"cells":21,"propagators":0},"file":"test-session-async-e2e.rkt","heartbeats":{"cell_allocs":954,"constraint_count":0,"constraint_retries":0,"elaborate_steps":96,"infer_steps":32,"meta_created":0,"meta_solved":0,"prop_allocs":0,"prop_firings":0,"reduce_steps":24,"resolution_cycles":0,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":0,"zonk_steps":0},"memory":{"gc_ms":90,"mem_after_bytes":210395816,"mem_before_bytes":210395288,"mem_retained_bytes":528},"phases":{"elaborate_ms":61,"parse_ms":0,"qtt_ms":0,"reduce_ms":0,"trait_resolve_ms":0,"type_check_ms":13,"zonk_ms":0},"status":"pass","tests":8,"wall_ms":2318},{"cell_metrics":{"cells":22,"propagators":0},"file":"test-session-caps-01.rkt","heartbeats":{"cell_allocs":473,"constraint_count":0,"constraint_retries":0,"elaborate_steps":18,"infer_steps":4,"meta_created":0,"meta_solved":0,"prop_allocs":0,"prop_firings":0,"reduce_steps":4,"resolution_cycles":0,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":0,"zonk_steps":0},"memory":{"gc_ms":85,"mem_after_bytes":198564472,"mem_before_bytes":198565040,"mem_retained_bytes":0},"phases":{"elaborate_ms":8,"parse_ms":0,"qtt_ms":0,"reduce_ms":0,"trait_resolve_ms":0,"type_check_ms":1,"zonk_ms":0},"status":"pass","tests":12,"wall_ms":1586},{"file":"test-session-lattice-01.rkt","status":"pass","tests":26,"wall_ms":244},{"file":"test-session-parse-02.rkt","status":"pass","tests":16,"wall_ms":229},{"file":"test-session-propagators-01.rkt","status":"pass","tests":20,"wall_ms":177},{"file":"test-session-parse-01.rkt","status":"pass","tests":18,"wall_ms":317},{"file":"test-session-runtime-01.rkt","status":"pass","tests":20,"wall_ms":225},{"file":"test-session-runtime-02.rkt","status":"pass","tests":19,"wall_ms":258},{"file":"test-sessions.rkt","status":"pass","tests":13,"wall_ms":119},{"file":"test-session-type-bridge-01.rkt","status":"pass","tests":25,"wall_ms":503},{"cell_metrics":{"cells":14,"propagators":0},"file":"test-search-heuristics-01.rkt","heartbeats":{"cell_allocs":0,"constraint_count":0,"constraint_retries":0,"elaborate_steps":0,"infer_steps":0,"meta_created":0,"meta_solved":0,"prop_allocs":0,"prop_firings":0,"reduce_steps":0,"resolution_cycles":0,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":0,"zonk_steps":0},"memory":{"gc_ms":102,"mem_after_bytes":220062880,"mem_before_bytes":218910456,"mem_retained_bytes":1152424},"phases":{"elaborate_ms":0,"parse_ms":0,"qtt_ms":0,"reduce_ms":0,"trait_resolve_ms":0,"type_check_ms":0,"zonk_ms":0},"status":"pass","tests":41,"wall_ms":10509},{"cell_metrics":{"cells":95,"propagators":0},"file":"test-selection-paths.rkt","heartbeats":{"cell_allocs":2856,"constraint_count":0,"constraint_retries":0,"elaborate_steps":243,"infer_steps":264,"meta_created":8,"meta_solved":0,"prop_allocs":0,"prop_firings":0,"reduce_steps":116,"resolution_cycles":0,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":58,"zonk_steps":184},"memory":{"gc_ms":82,"mem_after_bytes":185822280,"mem_before_bytes":185811312,"mem_retained_bytes":10968},"phases":{"elaborate_ms":134,"parse_ms":0,"qtt_ms":126,"reduce_ms":0,"trait_resolve_ms":0,"type_check_ms":191,"zonk_ms":0},"status":"pass","tests":56,"wall_ms":9780},{"cell_metrics":{"cells":19,"propagators":0},"file":"test-session-throws-01.rkt","heartbeats":{"cell_allocs":174,"constraint_count":0,"constraint_retries":0,"elaborate_steps":19,"infer_steps":0,"meta_created":0,"meta_solved":0,"prop_allocs":0,"prop_firings":0,"reduce_steps":0,"resolution_cycles":0,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":0,"zonk_steps":0},"memory":{"gc_ms":93,"mem_after_bytes":222988464,"mem_before_bytes":222988728,"mem_retained_bytes":0},"phases":{"elaborate_ms":4,"parse_ms":0,"qtt_ms":0,"reduce_ms":0,"trait_resolve_ms":0,"type_check_ms":0,"zonk_ms":0},"status":"pass","tests":10,"wall_ms":2612},{"cell_metrics":{"cells":25,"propagators":0},"file":"test-session-runtime-04.rkt","heartbeats":{"cell_allocs":860,"constraint_count":0,"constraint_retries":0,"elaborate_steps":28,"infer_steps":9,"meta_created":0,"meta_solved":0,"prop_allocs":0,"prop_firings":0,"reduce_steps":9,"resolution_cycles":0,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":0,"zonk_steps":0},"memory":{"gc_ms":94,"mem_after_bytes":202115448,"mem_before_bytes":202113816,"mem_retained_bytes":1632},"phases":{"elaborate_ms":9,"parse_ms":0,"qtt_ms":0,"reduce_ms":0,"trait_resolve_ms":0,"type_check_ms":9,"zonk_ms":0},"status":"pass","tests":11,"wall_ms":2670},{"file":"test-solver-config.rkt","status":"pass","tests":13,"wall_ms":187},{"cell_metrics":{"cells":31,"propagators":0},"file":"test-session-elaborate-01.rkt","heartbeats":{"cell_allocs":645,"constraint_count":0,"constraint_retries":0,"elaborate_steps":32,"infer_steps":4,"meta_created":0,"meta_solved":0,"prop_allocs":0,"prop_firings":0,"reduce_steps":4,"resolution_cycles":0,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":0,"zonk_steps":0},"memory":{"gc_ms":77,"mem_after_bytes":173637688,"mem_before_bytes":173637144,"mem_retained_bytes":544},"phases":{"elaborate_ms":6,"parse_ms":0,"qtt_ms":0,"reduce_ms":0,"trait_resolve_ms":0,"type_check_ms":4,"zonk_ms":0},"status":"pass","tests":19,"wall_ms":3840},{"file":"test-solver-occurs.rkt","status":"pass","tests":30,"wall_ms":238},{"cell_metrics":{"cells":37,"propagators":0},"file":"test-session-runtime-03.rkt","heartbeats":{"cell_allocs":1341,"constraint_count":0,"constraint_retries":0,"elaborate_steps":44,"infer_steps":11,"meta_created":0,"meta_solved":0,"prop_allocs":0,"prop_firings":0,"reduce_steps":11,"resolution_cycles":0,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":0,"zonk_steps":0},"memory":{"gc_ms":70,"mem_after_bytes":171843648,"mem_before_bytes":171840264,"mem_retained_bytes":3384},"phases":{"elaborate_ms":21,"parse_ms":0,"qtt_ms":0,"reduce_ms":0,"trait_resolve_ms":0,"type_check_ms":13,"zonk_ms":0},"status":"pass","tests":17,"wall_ms":3320},{"cell_metrics":{"cells":27,"propagators":0},"file":"test-session-ws-01.rkt","heartbeats":{"cell_allocs":283,"constraint_count":0,"constraint_retries":0,"elaborate_steps":17,"infer_steps":0,"meta_created":0,"meta_solved":0,"prop_allocs":0,"prop_firings":0,"reduce_steps":0,"resolution_cycles":0,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":0,"zonk_steps":0},"memory":{"gc_ms":93,"mem_after_bytes":210976984,"mem_before_bytes":210976272,"mem_retained_bytes":712},"phases":{"elaborate_ms":4,"parse_ms":0,"qtt_ms":0,"reduce_ms":0,"trait_resolve_ms":0,"type_check_ms":0,"zonk_ms":0},"status":"pass","tests":13,"wall_ms":3170},{"cell_metrics":{"cells":21,"propagators":0},"file":"test-set-ops-eval.rkt","heartbeats":{"cell_allocs":679,"constraint_count":0,"constraint_retries":0,"elaborate_steps":207,"infer_steps":262,"meta_created":10,"meta_solved":10,"prop_allocs":0,"prop_firings":0,"reduce_steps":166,"resolution_cycles":10,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":46,"zonk_steps":169},"memory":{"gc_ms":82,"mem_after_bytes":199289360,"mem_before_bytes":199293064,"mem_retained_bytes":0},"phases":{"elaborate_ms":174,"parse_ms":0,"qtt_ms":4,"reduce_ms":6,"trait_resolve_ms":0,"type_check_ms":271,"zonk_ms":0},"status":"pass","tests":13,"wall_ms":3625},{"cell_metrics":{"cells":27,"propagators":0},"file":"test-sexp-reader-parity.rkt","heartbeats":{"cell_allocs":231,"constraint_count":0,"constraint_retries":0,"elaborate_steps":89,"infer_steps":147,"meta_created":13,"meta_solved":13,"prop_allocs":0,"prop_firings":0,"reduce_steps":232,"resolution_cycles":13,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":64,"zonk_steps":190},"memory":{"gc_ms":93,"mem_after_bytes":219224224,"mem_before_bytes":219211952,"mem_retained_bytes":12272},"phases":{"elaborate_ms":72,"parse_ms":0,"qtt_ms":33,"reduce_ms":281,"trait_resolve_ms":0,"type_check_ms":215,"zonk_ms":0},"status":"pass","tests":21,"wall_ms":2577},{"cell_metrics":{"cells":41,"propagators":0},"file":"test-specialization.rkt","heartbeats":{"cell_allocs":366,"constraint_count":0,"constraint_retries":0,"elaborate_steps":54,"infer_steps":43,"meta_created":2,"meta_solved":1,"prop_allocs":0,"prop_firings":0,"reduce_steps":55,"resolution_cycles":1,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":30,"zonk_steps":62},"memory":{"gc_ms":72,"mem_after_bytes":172077008,"mem_before_bytes":172077712,"mem_retained_bytes":0},"phases":{"elaborate_ms":19,"parse_ms":0,"qtt_ms":19,"reduce_ms":27,"trait_resolve_ms":0,"type_check_ms":33,"zonk_ms":0},"status":"pass","tests":9,"wall_ms":692},{"file":"test-sre-core.rkt","status":"pass","tests":15,"wall_ms":231},{"file":"test-sre-duality.rkt","status":"pass","tests":17,"wall_ms":270},{"file":"test-sre-subtype.rkt","status":"pass","tests":26,"wall_ms":200},{"cell_metrics":{"cells":19,"propagators":0},"file":"test-set.rkt","heartbeats":{"cell_allocs":416,"constraint_count":0,"constraint_retries":0,"elaborate_steps":155,"infer_steps":125,"meta_created":4,"meta_solved":3,"prop_allocs":0,"prop_firings":0,"reduce_steps":176,"resolution_cycles":3,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":14,"zonk_steps":161},"memory":{"gc_ms":67,"mem_after_bytes":166430480,"mem_before_bytes":166436872,"mem_retained_bytes":0},"phases":{"elaborate_ms":58,"parse_ms":0,"qtt_ms":6,"reduce_ms":67,"trait_resolve_ms":0,"type_check_ms":60,"zonk_ms":0},"status":"pass","tests":48,"wall_ms":4020},{"cell_metrics":{"cells":29,"propagators":0},"file":"test-spec-ordering.rkt","heartbeats":{"cell_allocs":629,"constraint_count":0,"constraint_retries":0,"elaborate_steps":215,"infer_steps":152,"meta_created":0,"meta_solved":0,"prop_allocs":0,"prop_firings":0,"reduce_steps":230,"resolution_cycles":0,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":108,"zonk_steps":234},"memory":{"gc_ms":74,"mem_after_bytes":173787176,"mem_before_bytes":173806336,"mem_retained_bytes":0},"phases":{"elaborate_ms":73,"parse_ms":0,"qtt_ms":93,"reduce_ms":96,"trait_resolve_ms":0,"type_check_ms":142,"zonk_ms":0},"status":"pass","tests":10,"wall_ms":2138},{"cell_metrics":{"cells":37,"propagators":0},"file":"test-spec-mult-01.rkt","heartbeats":{"cell_allocs":438,"constraint_count":0,"constraint_retries":0,"elaborate_steps":112,"infer_steps":83,"meta_created":1,"meta_solved":1,"prop_allocs":0,"prop_firings":0,"reduce_steps":135,"resolution_cycles":1,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":43,"zonk_steps":122},"memory":{"gc_ms":97,"mem_after_bytes":223584504,"mem_before_bytes":223615432,"mem_retained_bytes":0},"phases":{"elaborate_ms":46,"parse_ms":0,"qtt_ms":17,"reduce_ms":80,"trait_resolve_ms":0,"type_check_ms":53,"zonk_ms":0},"status":"pass","tests":13,"wall_ms":3501},{"cell_metrics":{"cells":27,"propagators":3},"file":"test-reducible-02.rkt","heartbeats":{"cell_allocs":621,"constraint_count":0,"constraint_retries":0,"elaborate_steps":216,"infer_steps":560,"meta_created":89,"meta_solved":89,"prop_allocs":0,"prop_firings":0,"reduce_steps":1894,"resolution_cycles":87,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":193,"zonk_steps":690},"memory":{"gc_ms":73,"mem_after_bytes":161839416,"mem_before_bytes":161832432,"mem_retained_bytes":6984},"phases":{"elaborate_ms":757,"parse_ms":0,"qtt_ms":6,"reduce_ms":16328,"trait_resolve_ms":0,"type_check_ms":1464,"zonk_ms":1},"status":"pass","tests":14,"wall_ms":21084},{"cell_metrics":{"cells":29,"propagators":0},"file":"test-spec.rkt","heartbeats":{"cell_allocs":960,"constraint_count":0,"constraint_retries":0,"elaborate_steps":351,"infer_steps":228,"meta_created":1,"meta_solved":1,"prop_allocs":0,"prop_firings":0,"reduce_steps":363,"resolution_cycles":1,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":166,"zonk_steps":376},"memory":{"gc_ms":91,"mem_after_bytes":203269088,"mem_before_bytes":203272032,"mem_retained_bytes":0},"phases":{"elaborate_ms":109,"parse_ms":0,"qtt_ms":141,"reduce_ms":163,"trait_resolve_ms":0,"type_check_ms":225,"zonk_ms":0},"status":"pass","tests":33,"wall_ms":4713},{"file":"test-speculation-bridge.rkt","status":"pass","tests":27,"wall_ms":4702},{"cell_metrics":{"cells":19,"propagators":0},"file":"test-sign-galois.rkt","heartbeats":{"cell_allocs":350,"constraint_count":0,"constraint_retries":0,"elaborate_steps":81,"infer_steps":293,"meta_created":46,"meta_solved":46,"prop_allocs":0,"prop_firings":0,"reduce_steps":992,"resolution_cycles":46,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":150,"zonk_steps":392},"memory":{"gc_ms":80,"mem_after_bytes":187573480,"mem_before_bytes":186701240,"mem_retained_bytes":872240},"phases":{"elaborate_ms":268,"parse_ms":0,"qtt_ms":0,"reduce_ms":1310,"trait_resolve_ms":0,"type_check_ms":810,"zonk_ms":1},"status":"pass","tests":19,"wall_ms":8336},{"cell_metrics":{"cells":17,"propagators":0},"file":"test-stdlib-01-data-01.rkt","heartbeats":{"cell_allocs":528,"constraint_count":0,"constraint_retries":0,"elaborate_steps":124,"infer_steps":175,"meta_created":0,"meta_solved":0,"prop_allocs":0,"prop_firings":0,"reduce_steps":509,"resolution_cycles":0,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":34,"zonk_steps":168},"memory":{"gc_ms":79,"mem_after_bytes":172873312,"mem_before_bytes":172881976,"mem_retained_bytes":0},"phases":{"elaborate_ms":34,"parse_ms":0,"qtt_ms":0,"reduce_ms":463,"trait_resolve_ms":0,"type_check_ms":140,"zonk_ms":0},"status":"pass","tests":14,"wall_ms":6478},{"cell_metrics":{"cells":45,"propagators":0},"file":"test-sprint10.rkt","heartbeats":{"cell_allocs":1495,"constraint_count":0,"constraint_retries":0,"elaborate_steps":369,"infer_steps":337,"meta_created":11,"meta_solved":10,"prop_allocs":0,"prop_firings":0,"reduce_steps":492,"resolution_cycles":10,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":139,"zonk_steps":389},"memory":{"gc_ms":82,"mem_after_bytes":199772544,"mem_before_bytes":199725464,"mem_retained_bytes":47080},"phases":{"elaborate_ms":140,"parse_ms":0,"qtt_ms":80,"reduce_ms":237,"trait_resolve_ms":0,"type_check_ms":209,"zonk_ms":0},"status":"pass","tests":35,"wall_ms":7676},{"cell_metrics":{"cells":18,"propagators":0},"file":"test-stdlib-01-data-03.rkt","heartbeats":{"cell_allocs":580,"constraint_count":0,"constraint_retries":0,"elaborate_steps":225,"infer_steps":260,"meta_created":0,"meta_solved":0,"prop_allocs":0,"prop_firings":0,"reduce_steps":1114,"resolution_cycles":0,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":60,"zonk_steps":232},"memory":{"gc_ms":71,"mem_after_bytes":166900944,"mem_before_bytes":166918752,"mem_retained_bytes":0},"phases":{"elaborate_ms":78,"parse_ms":0,"qtt_ms":0,"reduce_ms":1321,"trait_resolve_ms":0,"type_check_ms":280,"zonk_ms":0},"status":"pass","tests":14,"wall_ms":7788},{"cell_metrics":{"cells":17,"propagators":0},"file":"test-stdlib-02-traits-02.rkt","heartbeats":{"cell_allocs":310,"constraint_count":0,"constraint_retries":0,"elaborate_steps":351,"infer_steps":550,"meta_created":0,"meta_solved":0,"prop_allocs":0,"prop_firings":0,"reduce_steps":818,"resolution_cycles":0,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":157,"zonk_steps":416},"memory":{"gc_ms":66,"mem_after_bytes":162214744,"mem_before_bytes":162225128,"mem_retained_bytes":0},"phases":{"elaborate_ms":116,"parse_ms":0,"qtt_ms":0,"reduce_ms":1475,"trait_resolve_ms":0,"type_check_ms":943,"zonk_ms":0},"status":"pass","tests":19,"wall_ms":5695},{"cell_metrics":{"cells":50,"propagators":0},"file":"test-stdlib-02-traits-01.rkt","heartbeats":{"cell_allocs":1550,"constraint_count":0,"constraint_retries":0,"elaborate_steps":334,"infer_steps":432,"meta_created":0,"meta_solved":0,"prop_allocs":0,"prop_firings":0,"reduce_steps":510,"resolution_cycles":0,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":94,"zonk_steps":401},"memory":{"gc_ms":92,"mem_after_bytes":223948208,"mem_before_bytes":223966664,"mem_retained_bytes":0},"phases":{"elaborate_ms":127,"parse_ms":0,"qtt_ms":0,"reduce_ms":294,"trait_resolve_ms":0,"type_check_ms":395,"zonk_ms":1},"status":"pass","tests":19,"wall_ms":6562},{"cell_metrics":{"cells":21,"propagators":0},"file":"test-stdlib-01-data-02.rkt","heartbeats":{"cell_allocs":799,"constraint_count":0,"constraint_retries":0,"elaborate_steps":266,"infer_steps":250,"meta_created":8,"meta_solved":8,"prop_allocs":0,"prop_firings":0,"reduce_steps":1456,"resolution_cycles":8,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":34,"zonk_steps":276},"memory":{"gc_ms":90,"mem_after_bytes":220456072,"mem_before_bytes":220455208,"mem_retained_bytes":864},"phases":{"elaborate_ms":101,"parse_ms":0,"qtt_ms":5,"reduce_ms":1536,"trait_resolve_ms":0,"type_check_ms":214,"zonk_ms":0},"status":"pass","tests":14,"wall_ms":9175},{"cell_metrics":{"cells":17,"propagators":0},"file":"test-stdlib-02-traits-04.rkt","heartbeats":{"cell_allocs":304,"constraint_count":0,"constraint_retries":0,"elaborate_steps":200,"infer_steps":172,"meta_created":0,"meta_solved":0,"prop_allocs":0,"prop_firings":0,"reduce_steps":1185,"resolution_cycles":0,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":27,"zonk_steps":158},"memory":{"gc_ms":96,"mem_after_bytes":211992656,"mem_before_bytes":211972296,"mem_retained_bytes":20360},"phases":{"elaborate_ms":69,"parse_ms":0,"qtt_ms":0,"reduce_ms":1344,"trait_resolve_ms":0,"type_check_ms":203,"zonk_ms":0},"status":"pass","tests":19,"wall_ms":5712},{"cell_metrics":{"cells":41,"propagators":0},"file":"test-stdlib-01-data-04.rkt","heartbeats":{"cell_allocs":1326,"constraint_count":0,"constraint_retries":0,"elaborate_steps":527,"infer_steps":744,"meta_created":0,"meta_solved":0,"prop_allocs":0,"prop_firings":0,"reduce_steps":1062,"resolution_cycles":0,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":198,"zonk_steps":554},"memory":{"gc_ms":69,"mem_after_bytes":174446312,"mem_before_bytes":174437208,"mem_retained_bytes":9104},"phases":{"elaborate_ms":170,"parse_ms":0,"qtt_ms":0,"reduce_ms":1217,"trait_resolve_ms":0,"type_check_ms":972,"zonk_ms":0},"status":"pass","tests":23,"wall_ms":10131},{"cell_metrics":{"cells":50,"propagators":0},"file":"test-stdlib-02-traits-03.rkt","heartbeats":{"cell_allocs":1890,"constraint_count":0,"constraint_retries":0,"elaborate_steps":425,"infer_steps":719,"meta_created":0,"meta_solved":0,"prop_allocs":0,"prop_firings":0,"reduce_steps":1144,"resolution_cycles":0,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":198,"zonk_steps":543},"memory":{"gc_ms":87,"mem_after_bytes":203693280,"mem_before_bytes":203685400,"mem_retained_bytes":7880},"phases":{"elaborate_ms":140,"parse_ms":0,"qtt_ms":37,"reduce_ms":2051,"trait_resolve_ms":0,"type_check_ms":729,"zonk_ms":0},"status":"pass","tests":19,"wall_ms":7683},{"cell_metrics":{"cells":30,"propagators":0},"file":"test-stdlib-02-traits-06.rkt","heartbeats":{"cell_allocs":606,"constraint_count":0,"constraint_retries":0,"elaborate_steps":312,"infer_steps":390,"meta_created":0,"meta_solved":0,"prop_allocs":0,"prop_firings":0,"reduce_steps":1011,"resolution_cycles":0,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":146,"zonk_steps":327},"memory":{"gc_ms":86,"mem_after_bytes":173071272,"mem_before_bytes":173118904,"mem_retained_bytes":0},"phases":{"elaborate_ms":122,"parse_ms":0,"qtt_ms":61,"reduce_ms":1722,"trait_resolve_ms":0,"type_check_ms":403,"zonk_ms":0},"status":"pass","tests":19,"wall_ms":5778},{"cell_metrics":{"cells":17,"propagators":0},"file":"test-strategy-01.rkt","heartbeats":{"cell_allocs":96,"constraint_count":0,"constraint_retries":0,"elaborate_steps":0,"infer_steps":0,"meta_created":0,"meta_solved":0,"prop_allocs":0,"prop_firings":0,"reduce_steps":0,"resolution_cycles":0,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":0,"zonk_steps":0},"memory":{"gc_ms":82,"mem_after_bytes":203810976,"mem_before_bytes":203809776,"mem_retained_bytes":1200},"phases":{"elaborate_ms":0,"parse_ms":0,"qtt_ms":0,"reduce_ms":0,"trait_resolve_ms":0,"type_check_ms":0,"zonk_ms":0},"status":"pass","tests":14,"wall_ms":1176},{"cell_metrics":{"cells":17,"propagators":0},"file":"test-stdlib-02-traits-05.rkt","heartbeats":{"cell_allocs":320,"constraint_count":0,"constraint_retries":0,"elaborate_steps":273,"infer_steps":336,"meta_created":0,"meta_solved":0,"prop_allocs":0,"prop_firings":0,"reduce_steps":2023,"resolution_cycles":0,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":74,"zonk_steps":282},"memory":{"gc_ms":83,"mem_after_bytes":186271784,"mem_before_bytes":186238344,"mem_retained_bytes":33440},"phases":{"elaborate_ms":86,"parse_ms":0,"qtt_ms":0,"reduce_ms":2394,"trait_resolve_ms":0,"type_check_ms":400,"zonk_ms":0},"status":"pass","tests":16,"wall_ms":6601},{"file":"test-stratify.rkt","status":"pass","tests":10,"wall_ms":59},{"cell_metrics":{"cells":17,"propagators":0},"file":"test-stdlib-03-list-01.rkt","heartbeats":{"cell_allocs":288,"constraint_count":0,"constraint_retries":0,"elaborate_steps":226,"infer_steps":474,"meta_created":0,"meta_solved":0,"prop_allocs":0,"prop_firings":0,"reduce_steps":1021,"resolution_cycles":0,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":132,"zonk_steps":360},"memory":{"gc_ms":71,"mem_after_bytes":167112304,"mem_before_bytes":167155608,"mem_retained_bytes":0},"phases":{"elaborate_ms":69,"parse_ms":0,"qtt_ms":0,"reduce_ms":1748,"trait_resolve_ms":0,"type_check_ms":478,"zonk_ms":0},"status":"pass","tests":18,"wall_ms":5214},{"cell_metrics":{"cells":17,"propagators":0},"file":"test-strategy-ws-01.rkt","heartbeats":{"cell_allocs":112,"constraint_count":0,"constraint_retries":0,"elaborate_steps":0,"infer_steps":0,"meta_created":0,"meta_solved":0,"prop_allocs":0,"prop_firings":0,"reduce_steps":0,"resolution_cycles":0,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":0,"zonk_steps":0},"memory":{"gc_ms":71,"mem_after_bytes":173137880,"mem_before_bytes":173137664,"mem_retained_bytes":216},"phases":{"elaborate_ms":0,"parse_ms":0,"qtt_ms":0,"reduce_ms":0,"trait_resolve_ms":0,"type_check_ms":0,"zonk_ms":0},"status":"pass","tests":7,"wall_ms":1108},{"cell_metrics":{"cells":29,"propagators":0},"file":"test-stratified-eval.rkt","heartbeats":{"cell_allocs":258,"constraint_count":0,"constraint_retries":0,"elaborate_steps":71,"infer_steps":87,"meta_created":0,"meta_solved":0,"prop_allocs":0,"prop_firings":0,"reduce_steps":46,"resolution_cycles":0,"solver_backtracks":16,"solver_unifies":47,"trait_resolve_steps":0,"unify_steps":0,"zonk_steps":89},"memory":{"gc_ms":84,"mem_after_bytes":204393600,"mem_before_bytes":204400080,"mem_retained_bytes":0},"phases":{"elaborate_ms":115,"parse_ms":0,"qtt_ms":0,"reduce_ms":26,"trait_resolve_ms":0,"type_check_ms":24,"zonk_ms":0},"status":"pass","tests":18,"wall_ms":1106},{"file":"test-substitution.rkt","status":"pass","tests":38,"wall_ms":195},{"file":"test-support.rkt","status":"pass","tests":0,"wall_ms":0},{"file":"test-structural-decomp.rkt","status":"pass","tests":43,"wall_ms":255},{"cell_metrics":{"cells":17,"propagators":0},"file":"test-stdlib-03-list-02.rkt","heartbeats":{"cell_allocs":290,"constraint_count":0,"constraint_retries":0,"elaborate_steps":287,"infer_steps":529,"meta_created":0,"meta_solved":0,"prop_allocs":0,"prop_firings":0,"reduce_steps":1399,"resolution_cycles":0,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":145,"zonk_steps":406},"memory":{"gc_ms":65,"mem_after_bytes":162420504,"mem_before_bytes":162397608,"mem_retained_bytes":22896},"phases":{"elaborate_ms":81,"parse_ms":0,"qtt_ms":0,"reduce_ms":3323,"trait_resolve_ms":0,"type_check_ms":524,"zonk_ms":0},"status":"pass","tests":18,"wall_ms":6778},{"cell_metrics":{"cells":47,"propagators":0},"file":"test-stdlib-03-list-05.rkt","heartbeats":{"cell_allocs":700,"constraint_count":0,"constraint_retries":0,"elaborate_steps":135,"infer_steps":135,"meta_created":0,"meta_solved":0,"prop_allocs":0,"prop_firings":0,"reduce_steps":526,"resolution_cycles":0,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":46,"zonk_steps":132},"memory":{"gc_ms":73,"mem_after_bytes":174633216,"mem_before_bytes":174640968,"mem_retained_bytes":0},"phases":{"elaborate_ms":38,"parse_ms":0,"qtt_ms":15,"reduce_ms":1164,"trait_resolve_ms":0,"type_check_ms":92,"zonk_ms":0},"status":"pass","tests":15,"wall_ms":4347},{"cell_metrics":{"cells":17,"propagators":0},"file":"test-stdlib-03-list-04-01.rkt","heartbeats":{"cell_allocs":160,"constraint_count":0,"constraint_retries":0,"elaborate_steps":234,"infer_steps":402,"meta_created":0,"meta_solved":0,"prop_allocs":0,"prop_firings":0,"reduce_steps":978,"resolution_cycles":0,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":102,"zonk_steps":310},"memory":{"gc_ms":102,"mem_after_bytes":220589704,"mem_before_bytes":220604248,"mem_retained_bytes":0},"phases":{"elaborate_ms":67,"parse_ms":0,"qtt_ms":0,"reduce_ms":3472,"trait_resolve_ms":0,"type_check_ms":483,"zonk_ms":0},"status":"pass","tests":10,"wall_ms":6221},{"file":"test-syntax.rkt","status":"pass","tests":20,"wall_ms":199},{"cell_metrics":{"cells":25,"propagators":0},"file":"test-subtyping.rkt","heartbeats":{"cell_allocs":374,"constraint_count":0,"constraint_retries":0,"elaborate_steps":44,"infer_steps":34,"meta_created":0,"meta_solved":0,"prop_allocs":0,"prop_firings":0,"reduce_steps":48,"resolution_cycles":0,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":15,"zonk_steps":36},"memory":{"gc_ms":87,"mem_after_bytes":205024360,"mem_before_bytes":205008320,"mem_retained_bytes":16040},"phases":{"elaborate_ms":10,"parse_ms":0,"qtt_ms":5,"reduce_ms":13,"trait_resolve_ms":0,"type_check_ms":22,"zonk_ms":0},"status":"pass","tests":44,"wall_ms":2483},{"cell_metrics":{"cells":18,"propagators":0},"file":"test-surface-defmacro-01.rkt","heartbeats":{"cell_allocs":227,"constraint_count":0,"constraint_retries":0,"elaborate_steps":109,"infer_steps":102,"meta_created":3,"meta_solved":3,"prop_allocs":0,"prop_firings":0,"reduce_steps":141,"resolution_cycles":3,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":24,"zonk_steps":110},"memory":{"gc_ms":75,"mem_after_bytes":173834432,"mem_before_bytes":173841312,"mem_retained_bytes":0},"phases":{"elaborate_ms":26,"parse_ms":0,"qtt_ms":0,"reduce_ms":54,"trait_resolve_ms":0,"type_check_ms":58,"zonk_ms":0},"status":"pass","tests":14,"wall_ms":2558},{"cell_metrics":{"cells":19,"propagators":0},"file":"test-surface-defmacro-02.rkt","heartbeats":{"cell_allocs":255,"constraint_count":0,"constraint_retries":0,"elaborate_steps":105,"infer_steps":108,"meta_created":5,"meta_solved":5,"prop_allocs":0,"prop_firings":0,"reduce_steps":151,"resolution_cycles":5,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":34,"zonk_steps":100},"memory":{"gc_ms":64,"mem_after_bytes":168290176,"mem_before_bytes":168303656,"mem_retained_bytes":0},"phases":{"elaborate_ms":33,"parse_ms":0,"qtt_ms":0,"reduce_ms":48,"trait_resolve_ms":0,"type_check_ms":66,"zonk_ms":0},"status":"pass","tests":16,"wall_ms":2520},{"file":"test-tabling-types.rkt","status":"pass","tests":31,"wall_ms":308},{"file":"test-tabling.rkt","status":"pass","tests":20,"wall_ms":163},{"cell_metrics":{"cells":25,"propagators":0},"file":"test-syntax-verify.rkt","heartbeats":{"cell_allocs":148,"constraint_count":0,"constraint_retries":0,"elaborate_steps":35,"infer_steps":73,"meta_created":11,"meta_solved":11,"prop_allocs":0,"prop_firings":0,"reduce_steps":103,"resolution_cycles":11,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":22,"zonk_steps":104},"memory":{"gc_ms":74,"mem_after_bytes":174703768,"mem_before_bytes":174719976,"mem_retained_bytes":0},"phases":{"elaborate_ms":27,"parse_ms":0,"qtt_ms":0,"reduce_ms":22,"trait_resolve_ms":0,"type_check_ms":83,"zonk_ms":0},"status":"pass","tests":5,"wall_ms":1040},{"file":"test-term-lattice-01.rkt","status":"pass","tests":49,"wall_ms":314},{"file":"test-trace-data.rkt","status":"pass","tests":16,"wall_ms":172},{"cell_metrics":{"cells":20,"propagators":0},"file":"test-stdlib-02-traits-07.rkt","heartbeats":{"cell_allocs":424,"constraint_count":0,"constraint_retries":0,"elaborate_steps":297,"infer_steps":652,"meta_created":7,"meta_solved":7,"prop_allocs":0,"prop_firings":0,"reduce_steps":1421,"resolution_cycles":7,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":199,"zonk_steps":518},"memory":{"gc_ms":85,"mem_after_bytes":200044304,"mem_before_bytes":200036168,"mem_retained_bytes":8136},"phases":{"elaborate_ms":87,"parse_ms":0,"qtt_ms":27,"reduce_ms":4030,"trait_resolve_ms":0,"type_check_ms":794,"zonk_ms":0},"status":"pass","tests":22,"wall_ms":9211},{"file":"test-tms-cell.rkt","status":"pass","tests":34,"wall_ms":282},{"file":"test-trace-serialize.rkt","status":"pass","tests":19,"wall_ms":227},{"cell_metrics":{"cells":21,"propagators":0},"file":"test-trait-impl-01.rkt","heartbeats":{"cell_allocs":81,"constraint_count":0,"constraint_retries":0,"elaborate_steps":37,"infer_steps":29,"meta_created":0,"meta_solved":0,"prop_allocs":0,"prop_firings":0,"reduce_steps":31,"resolution_cycles":0,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":16,"zonk_steps":39},"memory":{"gc_ms":73,"mem_after_bytes":175361560,"mem_before_bytes":175406392,"mem_retained_bytes":0},"phases":{"elaborate_ms":9,"parse_ms":0,"qtt_ms":8,"reduce_ms":7,"trait_resolve_ms":0,"type_check_ms":16,"zonk_ms":0},"status":"pass","tests":16,"wall_ms":536},{"cell_metrics":{"cells":17,"propagators":0},"file":"test-termination-01.rkt","heartbeats":{"cell_allocs":64,"constraint_count":0,"constraint_retries":0,"elaborate_steps":18,"infer_steps":18,"meta_created":0,"meta_solved":0,"prop_allocs":0,"prop_firings":0,"reduce_steps":38,"resolution_cycles":0,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":0,"zonk_steps":22},"memory":{"gc_ms":83,"mem_after_bytes":206182952,"mem_before_bytes":206186584,"mem_retained_bytes":0},"phases":{"elaborate_ms":5,"parse_ms":0,"qtt_ms":0,"reduce_ms":19,"trait_resolve_ms":0,"type_check_ms":4,"zonk_ms":0},"status":"pass","tests":45,"wall_ms":1213},{"cell_metrics":{"cells":14,"propagators":0},"file":"test-tabling-integration.rkt","heartbeats":{"cell_allocs":129,"constraint_count":0,"constraint_retries":0,"elaborate_steps":32,"infer_steps":43,"meta_created":0,"meta_solved":0,"prop_allocs":0,"prop_firings":0,"reduce_steps":40,"resolution_cycles":0,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":13,"zonk_steps":23},"memory":{"gc_ms":91,"mem_after_bytes":221167912,"mem_before_bytes":221142560,"mem_retained_bytes":25352},"phases":{"elaborate_ms":10,"parse_ms":0,"qtt_ms":0,"reduce_ms":9,"trait_resolve_ms":0,"type_check_ms":22,"zonk_ms":0},"status":"pass","tests":12,"wall_ms":2414},{"cell_metrics":{"cells":26,"propagators":0},"file":"test-trait-impl-03.rkt","heartbeats":{"cell_allocs":335,"constraint_count":0,"constraint_retries":0,"elaborate_steps":114,"infer_steps":98,"meta_created":0,"meta_solved":0,"prop_allocs":0,"prop_firings":0,"reduce_steps":494,"resolution_cycles":0,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":32,"zonk_steps":118},"memory":{"gc_ms":77,"mem_after_bytes":175136648,"mem_before_bytes":175089416,"mem_retained_bytes":47232},"phases":{"elaborate_ms":36,"parse_ms":0,"qtt_ms":16,"reduce_ms":448,"trait_resolve_ms":0,"type_check_ms":76,"zonk_ms":0},"status":"pass","tests":16,"wall_ms":2062},{"file":"test-trait-resolution-bridge.rkt","status":"pass","tests":10,"wall_ms":127},{"cell_metrics":{"cells":17,"propagators":0},"file":"test-stdlib-03-list-04-02.rkt","heartbeats":{"cell_allocs":128,"constraint_count":0,"constraint_retries":0,"elaborate_steps":145,"infer_steps":289,"meta_created":0,"meta_solved":0,"prop_allocs":0,"prop_firings":0,"reduce_steps":1422,"resolution_cycles":0,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":81,"zonk_steps":216},"memory":{"gc_ms":152,"mem_after_bytes":212060376,"mem_before_bytes":212119312,"mem_retained_bytes":0},"phases":{"elaborate_ms":42,"parse_ms":0,"qtt_ms":0,"reduce_ms":7164,"trait_resolve_ms":0,"type_check_ms":343,"zonk_ms":0},"status":"pass","tests":8,"wall_ms":9349},{"cell_metrics":{"cells":17,"propagators":0},"file":"test-stdlib-03-list-03.rkt","heartbeats":{"cell_allocs":288,"constraint_count":0,"constraint_retries":0,"elaborate_steps":391,"infer_steps":774,"meta_created":0,"meta_solved":0,"prop_allocs":0,"prop_firings":0,"reduce_steps":2015,"resolution_cycles":0,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":210,"zonk_steps":582},"memory":{"gc_ms":113,"mem_after_bytes":224190616,"mem_before_bytes":224190656,"mem_retained_bytes":0},"phases":{"elaborate_ms":103,"parse_ms":0,"qtt_ms":0,"reduce_ms":5702,"trait_resolve_ms":0,"type_check_ms":888,"zonk_ms":0},"status":"pass","tests":18,"wall_ms":10636},{"cell_metrics":{"cells":17,"propagators":0},"file":"test-trait-narrowing-01.rkt","heartbeats":{"cell_allocs":112,"constraint_count":0,"constraint_retries":0,"elaborate_steps":34,"infer_steps":34,"meta_created":0,"meta_solved":0,"prop_allocs":0,"prop_firings":0,"reduce_steps":101,"resolution_cycles":0,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":0,"zonk_steps":41},"memory":{"gc_ms":92,"mem_after_bytes":221328464,"mem_before_bytes":221352600,"mem_retained_bytes":0},"phases":{"elaborate_ms":9,"parse_ms":0,"qtt_ms":0,"reduce_ms":55,"trait_resolve_ms":0,"type_check_ms":9,"zonk_ms":0},"status":"pass","tests":7,"wall_ms":1814},{"cell_metrics":{"cells":17,"propagators":0},"file":"test-trait-introspection-01.rkt","heartbeats":{"cell_allocs":208,"constraint_count":0,"constraint_retries":0,"elaborate_steps":0,"infer_steps":0,"meta_created":0,"meta_solved":0,"prop_allocs":0,"prop_firings":0,"reduce_steps":0,"resolution_cycles":0,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":0,"zonk_steps":0},"memory":{"gc_ms":83,"mem_after_bytes":206573272,"mem_before_bytes":206590336,"mem_retained_bytes":0},"phases":{"elaborate_ms":0,"parse_ms":0,"qtt_ms":0,"reduce_ms":0,"trait_resolve_ms":0,"type_check_ms":0,"zonk_ms":0},"status":"pass","tests":17,"wall_ms":2617},{"cell_metrics":{"cells":28,"propagators":3},"file":"test-trait-tycon-01.rkt","heartbeats":{"cell_allocs":176,"constraint_count":0,"constraint_retries":0,"elaborate_steps":135,"infer_steps":73,"meta_created":9,"meta_solved":6,"prop_allocs":0,"prop_firings":0,"reduce_steps":154,"resolution_cycles":6,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":45,"zonk_steps":185},"memory":{"gc_ms":102,"mem_after_bytes":224669312,"mem_before_bytes":224623696,"mem_retained_bytes":45616},"phases":{"elaborate_ms":82,"parse_ms":0,"qtt_ms":24,"reduce_ms":66,"trait_resolve_ms":0,"type_check_ms":166,"zonk_ms":0},"status":"pass","tests":15,"wall_ms":1564},{"cell_metrics":{"cells":20,"propagators":0},"file":"test-trait-impl-02.rkt","heartbeats":{"cell_allocs":210,"constraint_count":0,"constraint_retries":0,"elaborate_steps":67,"infer_steps":171,"meta_created":17,"meta_solved":17,"prop_allocs":0,"prop_firings":0,"reduce_steps":338,"resolution_cycles":17,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":64,"zonk_steps":181},"memory":{"gc_ms":86,"mem_after_bytes":200281192,"mem_before_bytes":200251976,"mem_retained_bytes":29216},"phases":{"elaborate_ms":66,"parse_ms":0,"qtt_ms":0,"reduce_ms":256,"trait_resolve_ms":0,"type_check_ms":230,"zonk_ms":0},"status":"pass","tests":16,"wall_ms":4294},{"cell_metrics":{"cells":20,"propagators":0},"file":"test-trait-impl-04-01.rkt","heartbeats":{"cell_allocs":243,"constraint_count":0,"constraint_retries":0,"elaborate_steps":154,"infer_steps":325,"meta_created":15,"meta_solved":10,"prop_allocs":0,"prop_firings":0,"reduce_steps":698,"resolution_cycles":10,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":136,"zonk_steps":369},"memory":{"gc_ms":73,"mem_after_bytes":169611600,"mem_before_bytes":169607224,"mem_retained_bytes":4376},"phases":{"elaborate_ms":213,"parse_ms":0,"qtt_ms":0,"reduce_ms":985,"trait_resolve_ms":0,"type_check_ms":793,"zonk_ms":0},"status":"pass","tests":14,"wall_ms":4363},{"file":"test-tycon.rkt","status":"pass","tests":30,"wall_ms":393},{"file":"test-type-lattice.rkt","status":"pass","tests":35,"wall_ms":295},{"file":"test-typing-sessions.rkt","status":"pass","tests":10,"wall_ms":142},{"file":"test-typing.rkt","status":"pass","tests":38,"wall_ms":303},{"cell_metrics":{"cells":22,"propagators":3},"file":"test-trait-resolution.rkt","heartbeats":{"cell_allocs":440,"constraint_count":0,"constraint_retries":0,"elaborate_steps":286,"infer_steps":276,"meta_created":16,"meta_solved":14,"prop_allocs":0,"prop_firings":0,"reduce_steps":549,"resolution_cycles":16,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":170,"zonk_steps":430},"memory":{"gc_ms":88,"mem_after_bytes":212737136,"mem_before_bytes":212710208,"mem_retained_bytes":26928},"phases":{"elaborate_ms":142,"parse_ms":0,"qtt_ms":160,"reduce_ms":378,"trait_resolve_ms":0,"type_check_ms":286,"zonk_ms":0},"status":"pass","tests":22,"wall_ms":3178},{"cell_metrics":{"cells":17,"propagators":0},"file":"test-trait-resolution-propagator.rkt","heartbeats":{"cell_allocs":352,"constraint_count":0,"constraint_retries":0,"elaborate_steps":54,"infer_steps":80,"meta_created":0,"meta_solved":0,"prop_allocs":0,"prop_firings":0,"reduce_steps":1553,"resolution_cycles":0,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":5,"zonk_steps":86},"memory":{"gc_ms":74,"mem_after_bytes":176476392,"mem_before_bytes":175750248,"mem_retained_bytes":726144},"phases":{"elaborate_ms":16,"parse_ms":0,"qtt_ms":0,"reduce_ms":1880,"trait_resolve_ms":0,"type_check_ms":46,"zonk_ms":0},"status":"pass","tests":11,"wall_ms":4203},{"cell_metrics":{"cells":18,"propagators":0},"file":"test-transient.rkt","heartbeats":{"cell_allocs":161,"constraint_count":0,"constraint_retries":0,"elaborate_steps":91,"infer_steps":87,"meta_created":0,"meta_solved":0,"prop_allocs":0,"prop_firings":0,"reduce_steps":134,"resolution_cycles":0,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":5,"zonk_steps":85},"memory":{"gc_ms":91,"mem_after_bytes":225173640,"mem_before_bytes":225180440,"mem_retained_bytes":0},"phases":{"elaborate_ms":32,"parse_ms":0,"qtt_ms":0,"reduce_ms":33,"trait_resolve_ms":0,"type_check_ms":37,"zonk_ms":0},"status":"pass","tests":38,"wall_ms":2421},{"file":"test-unify-structural.rkt","status":"pass","tests":35,"wall_ms":224},{"file":"test-unify.rkt","status":"pass","tests":50,"wall_ms":582},{"cell_metrics":{"cells":18,"propagators":0},"file":"test-type-syntax-refactor.rkt","heartbeats":{"cell_allocs":246,"constraint_count":0,"constraint_retries":0,"elaborate_steps":61,"infer_steps":45,"meta_created":0,"meta_solved":0,"prop_allocs":0,"prop_firings":0,"reduce_steps":24,"resolution_cycles":0,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":8,"zonk_steps":10},"memory":{"gc_ms":78,"mem_after_bytes":201761144,"mem_before_bytes":201762792,"mem_retained_bytes":0},"phases":{"elaborate_ms":13,"parse_ms":0,"qtt_ms":0,"reduce_ms":0,"trait_resolve_ms":0,"type_check_ms":21,"zonk_ms":0},"status":"pass","tests":37,"wall_ms":2910},{"cell_metrics":{"cells":19,"propagators":0},"file":"test-unify-propagator.rkt","heartbeats":{"cell_allocs":159,"constraint_count":0,"constraint_retries":0,"elaborate_steps":34,"infer_steps":34,"meta_created":0,"meta_solved":0,"prop_allocs":0,"prop_firings":0,"reduce_steps":128,"resolution_cycles":0,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":4,"zonk_steps":38},"memory":{"gc_ms":71,"mem_after_bytes":176054848,"mem_before_bytes":175999656,"mem_retained_bytes":55192},"phases":{"elaborate_ms":7,"parse_ms":0,"qtt_ms":1,"reduce_ms":118,"trait_resolve_ms":0,"type_check_ms":18,"zonk_ms":0},"status":"pass","tests":14,"wall_ms":1482},{"file":"test-union-find-types.rkt","status":"pass","tests":29,"wall_ms":200},{"file":"test-unify-cell-driven.rkt","status":"pass","tests":13,"wall_ms":2777},{"file":"test-union-find.rkt","status":"pass","tests":19,"wall_ms":154},{"cell_metrics":{"cells":20,"propagators":0},"file":"test-trait-impl-04-02.rkt","heartbeats":{"cell_allocs":171,"constraint_count":0,"constraint_retries":0,"elaborate_steps":119,"infer_steps":308,"meta_created":27,"meta_solved":18,"prop_allocs":0,"prop_firings":0,"reduce_steps":1727,"resolution_cycles":18,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":159,"zonk_steps":318},"memory":{"gc_ms":100,"mem_after_bytes":175546344,"mem_before_bytes":175566120,"mem_retained_bytes":0},"phases":{"elaborate_ms":329,"parse_ms":0,"qtt_ms":0,"reduce_ms":4753,"trait_resolve_ms":0,"type_check_ms":1169,"zonk_ms":0},"status":"pass","tests":9,"wall_ms":7841},{"cell_metrics":{"cells":18,"propagators":0},"file":"test-union-find-integration-01.rkt","heartbeats":{"cell_allocs":132,"constraint_count":0,"constraint_retries":0,"elaborate_steps":26,"infer_steps":31,"meta_created":0,"meta_solved":0,"prop_allocs":0,"prop_firings":0,"reduce_steps":34,"resolution_cycles":0,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":11,"zonk_steps":26},"memory":{"gc_ms":91,"mem_after_bytes":226731768,"mem_before_bytes":226738184,"mem_retained_bytes":0},"phases":{"elaborate_ms":8,"parse_ms":0,"qtt_ms":4,"reduce_ms":9,"trait_resolve_ms":0,"type_check_ms":12,"zonk_ms":0},"status":"pass","tests":6,"wall_ms":1237},{"cell_metrics":{"cells":18,"propagators":0},"file":"test-union-types.rkt","heartbeats":{"cell_allocs":97,"constraint_count":0,"constraint_retries":0,"elaborate_steps":26,"infer_steps":21,"meta_created":0,"meta_solved":0,"prop_allocs":0,"prop_firings":0,"reduce_steps":14,"resolution_cycles":0,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":4,"zonk_steps":5},"memory":{"gc_ms":87,"mem_after_bytes":213453832,"mem_before_bytes":213392384,"mem_retained_bytes":61448},"phases":{"elaborate_ms":7,"parse_ms":0,"qtt_ms":0,"reduce_ms":0,"trait_resolve_ms":0,"type_check_ms":11,"zonk_ms":0},"status":"pass","tests":33,"wall_ms":1447},{"file":"test-wf-benchmark-01.rkt","status":"pass","tests":10,"wall_ms":107},{"file":"test-wf-comparison-01.rkt","status":"pass","tests":10,"wall_ms":103},{"cell_metrics":{"cells":19,"propagators":0},"file":"test-universe-level-inference.rkt","heartbeats":{"cell_allocs":146,"constraint_count":0,"constraint_retries":0,"elaborate_steps":28,"infer_steps":56,"meta_created":6,"meta_solved":6,"prop_allocs":0,"prop_firings":0,"reduce_steps":147,"resolution_cycles":6,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":18,"zonk_steps":68},"memory":{"gc_ms":70,"mem_after_bytes":175942776,"mem_before_bytes":175963160,"mem_retained_bytes":0},"phases":{"elaborate_ms":24,"parse_ms":0,"qtt_ms":1,"reduce_ms":89,"trait_resolve_ms":0,"type_check_ms":101,"zonk_ms":0},"status":"pass","tests":23,"wall_ms":1561},{"cell_metrics":{"cells":21,"propagators":0},"file":"test-unit-type.rkt","heartbeats":{"cell_allocs":206,"constraint_count":0,"constraint_retries":0,"elaborate_steps":40,"infer_steps":49,"meta_created":2,"meta_solved":2,"prop_allocs":0,"prop_firings":0,"reduce_steps":65,"resolution_cycles":2,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":16,"zonk_steps":64},"memory":{"gc_ms":70,"mem_after_bytes":176720832,"mem_before_bytes":176722040,"mem_retained_bytes":0},"phases":{"elaborate_ms":14,"parse_ms":0,"qtt_ms":3,"reduce_ms":17,"trait_resolve_ms":0,"type_check_ms":33,"zonk_ms":0},"status":"pass","tests":9,"wall_ms":1652},{"file":"test-wf-errors-01.rkt","status":"pass","tests":6,"wall_ms":61},{"file":"test-wf-literature-01.rkt","status":"pass","tests":13,"wall_ms":156},{"file":"test-wf-engine-01.rkt","status":"pass","tests":30,"wall_ms":265},{"file":"test-wf-tabling-01.rkt","status":"pass","tests":16,"wall_ms":110},{"file":"test-wf-propagators-01.rkt","status":"pass","tests":26,"wall_ms":273},{"cell_metrics":{"cells":17,"propagators":0},"file":"test-string-ops.rkt","heartbeats":{"cell_allocs":432,"constraint_count":0,"constraint_retries":0,"elaborate_steps":92,"infer_steps":176,"meta_created":0,"meta_solved":0,"prop_allocs":0,"prop_firings":0,"reduce_steps":1947,"resolution_cycles":0,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":19,"zonk_steps":188},"memory":{"gc_ms":87,"mem_after_bytes":205693592,"mem_before_bytes":204553744,"mem_retained_bytes":1139848},"phases":{"elaborate_ms":26,"parse_ms":0,"qtt_ms":0,"reduce_ms":3021,"trait_resolve_ms":0,"type_check_ms":139,"zonk_ms":0},"status":"pass","tests":27,"wall_ms":14202},{"cell_metrics":{"cells":42,"propagators":0},"file":"test-surface-integration.rkt","heartbeats":{"cell_allocs":3085,"constraint_count":0,"constraint_retries":0,"elaborate_steps":815,"infer_steps":621,"meta_created":0,"meta_solved":0,"prop_allocs":0,"prop_firings":0,"reduce_steps":670,"resolution_cycles":0,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":285,"zonk_steps":685},"memory":{"gc_ms":64,"mem_after_bytes":163563640,"mem_before_bytes":163576328,"mem_retained_bytes":0},"phases":{"elaborate_ms":218,"parse_ms":0,"qtt_ms":110,"reduce_ms":152,"trait_resolve_ms":0,"type_check_ms":409,"zonk_ms":0},"status":"pass","tests":77,"wall_ms":11799},{"file":"test-widening-fixpoint.rkt","status":"pass","tests":13,"wall_ms":135},{"cell_metrics":{"cells":25,"propagators":0},"file":"test-where-parsing.rkt","heartbeats":{"cell_allocs":233,"constraint_count":0,"constraint_retries":0,"elaborate_steps":179,"infer_steps":106,"meta_created":2,"meta_solved":2,"prop_allocs":0,"prop_firings":0,"reduce_steps":227,"resolution_cycles":2,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":82,"zonk_steps":196},"memory":{"gc_ms":91,"mem_after_bytes":214795240,"mem_before_bytes":214792240,"mem_retained_bytes":3000},"phases":{"elaborate_ms":41,"parse_ms":0,"qtt_ms":38,"reduce_ms":91,"trait_resolve_ms":0,"type_check_ms":77,"zonk_ms":0},"status":"pass","tests":16,"wall_ms":1165},{"cell_metrics":{"cells":19,"propagators":0},"file":"test-widen-specialization.rkt","heartbeats":{"cell_allocs":327,"constraint_count":0,"constraint_retries":0,"elaborate_steps":78,"infer_steps":117,"meta_created":0,"meta_solved":0,"prop_allocs":0,"prop_firings":0,"reduce_steps":244,"resolution_cycles":0,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":73,"zonk_steps":101},"memory":{"gc_ms":69,"mem_after_bytes":177390000,"mem_before_bytes":177420696,"mem_retained_bytes":0},"phases":{"elaborate_ms":16,"parse_ms":0,"qtt_ms":93,"reduce_ms":184,"trait_resolve_ms":0,"type_check_ms":123,"zonk_ms":0},"status":"pass","tests":5,"wall_ms":1256},{"cell_metrics":{"cells":26,"propagators":6},"file":"test-widenable-trait.rkt","heartbeats":{"cell_allocs":197,"constraint_count":0,"constraint_retries":0,"elaborate_steps":55,"infer_steps":160,"meta_created":11,"meta_solved":8,"prop_allocs":0,"prop_firings":0,"reduce_steps":364,"resolution_cycles":8,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":80,"zonk_steps":201},"memory":{"gc_ms":70,"mem_after_bytes":176872928,"mem_before_bytes":176691816,"mem_retained_bytes":181112},"phases":{"elaborate_ms":47,"parse_ms":0,"qtt_ms":13,"reduce_ms":261,"trait_resolve_ms":0,"type_check_ms":213,"zonk_ms":0},"status":"pass","tests":10,"wall_ms":2015},{"cell_metrics":{"cells":38,"propagators":0},"file":"test-varargs.rkt","heartbeats":{"cell_allocs":671,"constraint_count":0,"constraint_retries":0,"elaborate_steps":222,"infer_steps":400,"meta_created":41,"meta_solved":41,"prop_allocs":0,"prop_firings":0,"reduce_steps":662,"resolution_cycles":41,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":198,"zonk_steps":526},"memory":{"gc_ms":91,"mem_after_bytes":227201280,"mem_before_bytes":227179640,"mem_retained_bytes":21640},"phases":{"elaborate_ms":102,"parse_ms":0,"qtt_ms":62,"reduce_ms":394,"trait_resolve_ms":0,"type_check_ms":325,"zonk_ms":0},"status":"pass","tests":23,"wall_ms":3529},{"cell_metrics":{"cells":39,"propagators":0},"file":"test-union-find-integration-02.rkt","heartbeats":{"cell_allocs":682,"constraint_count":0,"constraint_retries":0,"elaborate_steps":100,"infer_steps":135,"meta_created":0,"meta_solved":0,"prop_allocs":0,"prop_firings":0,"reduce_steps":256,"resolution_cycles":0,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":63,"zonk_steps":109},"memory":{"gc_ms":84,"mem_after_bytes":219802000,"mem_before_bytes":219723224,"mem_retained_bytes":78776},"phases":{"elaborate_ms":17,"parse_ms":0,"qtt_ms":17,"reduce_ms":91,"trait_resolve_ms":0,"type_check_ms":36,"zonk_ms":0},"status":"pass","tests":3,"wall_ms":5174},{"cell_metrics":{"cells":34,"propagators":0},"file":"test-unified-match-01.rkt","heartbeats":{"cell_allocs":626,"constraint_count":0,"constraint_retries":0,"elaborate_steps":281,"infer_steps":296,"meta_created":10,"meta_solved":10,"prop_allocs":0,"prop_firings":0,"reduce_steps":272,"resolution_cycles":10,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":74,"zonk_steps":353},"memory":{"gc_ms":69,"mem_after_bytes":188911968,"mem_before_bytes":188925536,"mem_retained_bytes":0},"phases":{"elaborate_ms":56,"parse_ms":0,"qtt_ms":10,"reduce_ms":74,"trait_resolve_ms":0,"type_check_ms":109,"zonk_ms":0},"status":"pass","tests":15,"wall_ms":8737},{"cell_metrics":{"cells":35,"propagators":0},"file":"test-transducer-02.rkt","heartbeats":{"cell_allocs":917,"constraint_count":0,"constraint_retries":0,"elaborate_steps":357,"infer_steps":680,"meta_created":0,"meta_solved":0,"prop_allocs":0,"prop_firings":0,"reduce_steps":2043,"resolution_cycles":0,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":298,"zonk_steps":556},"memory":{"gc_ms":86,"mem_after_bytes":206987208,"mem_before_bytes":206998456,"mem_retained_bytes":0},"phases":{"elaborate_ms":84,"parse_ms":0,"qtt_ms":190,"reduce_ms":6421,"trait_resolve_ms":0,"type_check_ms":897,"zonk_ms":0},"status":"pass","tests":11,"wall_ms":10827},{"cell_metrics":{"cells":33,"propagators":0},"file":"test-transducer-01.rkt","heartbeats":{"cell_allocs":794,"constraint_count":0,"constraint_retries":0,"elaborate_steps":399,"infer_steps":949,"meta_created":0,"meta_solved":0,"prop_allocs":0,"prop_firings":0,"reduce_steps":2777,"resolution_cycles":0,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":367,"zonk_steps":750},"memory":{"gc_ms":108,"mem_after_bytes":221664432,"mem_before_bytes":221714064,"mem_retained_bytes":0},"phases":{"elaborate_ms":90,"parse_ms":0,"qtt_ms":151,"reduce_ms":7660,"trait_resolve_ms":0,"type_check_ms":1368,"zonk_ms":0},"status":"pass","tests":17,"wall_ms":13781}],"schema_version":3,"source":"affected","timestamp":"2026-03-30T02:10:45Z","total_tests":7529,"total_wall_ms":122551} {"all_pass":true,"branch":"main","commit":"04a6f804","file_count":383,"jobs":10,"machine":"macosx-aarch64","results":[{"cell_metrics":{"cells":18,"propagators":0},"file":"test-abstract-interpretation-e2e.rkt","heartbeats":{"cell_allocs":104,"constraint_count":0,"constraint_retries":0,"elaborate_steps":28,"infer_steps":88,"meta_created":8,"meta_solved":8,"prop_allocs":0,"prop_firings":0,"reduce_steps":221,"resolution_cycles":8,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":42,"zonk_steps":120},"memory":{"gc_ms":49,"mem_after_bytes":135857096,"mem_before_bytes":135772304,"mem_retained_bytes":84792},"phases":{"elaborate_ms":45,"parse_ms":0,"qtt_ms":0,"reduce_ms":184,"trait_resolve_ms":0,"type_check_ms":201,"zonk_ms":0},"status":"pass","tests":12,"wall_ms":1446},{"file":"test-architecture-d-02.rkt","status":"pass","tests":7,"wall_ms":155},{"file":"test-bilattice-01.rkt","status":"pass","tests":20,"wall_ms":176},{"cell_metrics":{"cells":19,"propagators":0},"file":"test-approx-literal.rkt","heartbeats":{"cell_allocs":220,"constraint_count":0,"constraint_retries":0,"elaborate_steps":25,"infer_steps":22,"meta_created":0,"meta_solved":0,"prop_allocs":0,"prop_firings":0,"reduce_steps":31,"resolution_cycles":0,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":8,"zonk_steps":34},"memory":{"gc_ms":45,"mem_after_bytes":135366856,"mem_before_bytes":135367808,"mem_retained_bytes":0},"phases":{"elaborate_ms":6,"parse_ms":0,"qtt_ms":4,"reduce_ms":16,"trait_resolve_ms":0,"type_check_ms":9,"zonk_ms":0},"status":"pass","tests":22,"wall_ms":1252},{"file":"test-architecture-selection-01.rkt","status":"pass","tests":18,"wall_ms":176},{"cell_metrics":{"cells":23,"propagators":0},"file":"test-bound-args-01.rkt","heartbeats":{"cell_allocs":220,"constraint_count":0,"constraint_retries":0,"elaborate_steps":83,"infer_steps":91,"meta_created":0,"meta_solved":0,"prop_allocs":0,"prop_firings":0,"reduce_steps":104,"resolution_cycles":0,"solver_backtracks":4,"solver_unifies":19,"trait_resolve_steps":0,"unify_steps":0,"zonk_steps":99},"memory":{"gc_ms":52,"mem_after_bytes":137148512,"mem_before_bytes":137137512,"mem_retained_bytes":11000},"phases":{"elaborate_ms":21,"parse_ms":0,"qtt_ms":0,"reduce_ms":55,"trait_resolve_ms":0,"type_check_ms":82,"zonk_ms":0},"status":"pass","tests":8,"wall_ms":1311},{"cell_metrics":{"cells":28,"propagators":3},"file":"test-bundles.rkt","heartbeats":{"cell_allocs":212,"constraint_count":0,"constraint_retries":0,"elaborate_steps":124,"infer_steps":116,"meta_created":8,"meta_solved":8,"prop_allocs":0,"prop_firings":0,"reduce_steps":328,"resolution_cycles":8,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":80,"zonk_steps":188},"memory":{"gc_ms":51,"mem_after_bytes":136290808,"mem_before_bytes":136273896,"mem_retained_bytes":16912},"phases":{"elaborate_ms":71,"parse_ms":0,"qtt_ms":73,"reduce_ms":253,"trait_resolve_ms":0,"type_check_ms":139,"zonk_ms":0},"status":"pass","tests":17,"wall_ms":1213},{"cell_metrics":{"cells":14,"propagators":0},"file":"test-atms-integration.rkt","heartbeats":{"cell_allocs":128,"constraint_count":0,"constraint_retries":0,"elaborate_steps":33,"infer_steps":42,"meta_created":0,"meta_solved":0,"prop_allocs":0,"prop_firings":0,"reduce_steps":33,"resolution_cycles":0,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":13,"zonk_steps":18},"memory":{"gc_ms":45,"mem_after_bytes":134920736,"mem_before_bytes":134920584,"mem_retained_bytes":152},"phases":{"elaborate_ms":8,"parse_ms":0,"qtt_ms":0,"reduce_ms":4,"trait_resolve_ms":0,"type_check_ms":32,"zonk_ms":0},"status":"pass","tests":11,"wall_ms":1240},{"file":"test-atms.rkt","status":"pass","tests":42,"wall_ms":417},{"cell_metrics":{"cells":21,"propagators":0},"file":"test-arity-checking.rkt","heartbeats":{"cell_allocs":265,"constraint_count":0,"constraint_retries":0,"elaborate_steps":95,"infer_steps":98,"meta_created":1,"meta_solved":1,"prop_allocs":0,"prop_firings":0,"reduce_steps":116,"resolution_cycles":1,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":41,"zonk_steps":100},"memory":{"gc_ms":52,"mem_after_bytes":135887000,"mem_before_bytes":135813176,"mem_retained_bytes":73824},"phases":{"elaborate_ms":29,"parse_ms":0,"qtt_ms":15,"reduce_ms":103,"trait_resolve_ms":0,"type_check_ms":80,"zonk_ms":1},"status":"pass","tests":16,"wall_ms":1842},{"file":"test-atms-types.rkt","status":"pass","tests":37,"wall_ms":333},{"cell_metrics":{"cells":27,"propagators":0},"file":"test-call-site-specialization.rkt","heartbeats":{"cell_allocs":681,"constraint_count":0,"constraint_retries":0,"elaborate_steps":229,"infer_steps":240,"meta_created":0,"meta_solved":0,"prop_allocs":0,"prop_firings":0,"reduce_steps":488,"resolution_cycles":0,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":155,"zonk_steps":275},"memory":{"gc_ms":59,"mem_after_bytes":137369984,"mem_before_bytes":137351328,"mem_retained_bytes":18656},"phases":{"elaborate_ms":73,"parse_ms":0,"qtt_ms":236,"reduce_ms":324,"trait_resolve_ms":0,"type_check_ms":313,"zonk_ms":0},"status":"pass","tests":8,"wall_ms":2094},{"cell_metrics":{"cells":25,"propagators":0},"file":"test-capability-02.rkt","heartbeats":{"cell_allocs":214,"constraint_count":0,"constraint_retries":0,"elaborate_steps":18,"infer_steps":18,"meta_created":0,"meta_solved":0,"prop_allocs":0,"prop_firings":0,"reduce_steps":10,"resolution_cycles":0,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":0,"zonk_steps":6},"memory":{"gc_ms":48,"mem_after_bytes":136806616,"mem_before_bytes":136809528,"mem_retained_bytes":0},"phases":{"elaborate_ms":4,"parse_ms":0,"qtt_ms":0,"reduce_ms":0,"trait_resolve_ms":0,"type_check_ms":9,"zonk_ms":0},"status":"pass","tests":13,"wall_ms":1001},{"cell_metrics":{"cells":31,"propagators":0},"file":"test-capability-01.rkt","heartbeats":{"cell_allocs":226,"constraint_count":0,"constraint_retries":0,"elaborate_steps":2,"infer_steps":2,"meta_created":0,"meta_solved":0,"prop_allocs":0,"prop_firings":0,"reduce_steps":0,"resolution_cycles":0,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":0,"zonk_steps":2},"memory":{"gc_ms":51,"mem_after_bytes":138869384,"mem_before_bytes":137751088,"mem_retained_bytes":1118296},"phases":{"elaborate_ms":1,"parse_ms":0,"qtt_ms":0,"reduce_ms":0,"trait_resolve_ms":0,"type_check_ms":0,"zonk_ms":0},"status":"pass","tests":11,"wall_ms":1051},{"cell_metrics":{"cells":35,"propagators":0},"file":"test-capability-03.rkt","heartbeats":{"cell_allocs":440,"constraint_count":0,"constraint_retries":0,"elaborate_steps":4,"infer_steps":4,"meta_created":0,"meta_solved":0,"prop_allocs":0,"prop_firings":0,"reduce_steps":2,"resolution_cycles":0,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":0,"zonk_steps":2},"memory":{"gc_ms":49,"mem_after_bytes":136009960,"mem_before_bytes":135550056,"mem_retained_bytes":459904},"phases":{"elaborate_ms":1,"parse_ms":0,"qtt_ms":0,"reduce_ms":0,"trait_resolve_ms":0,"type_check_ms":1,"zonk_ms":0},"status":"pass","tests":11,"wall_ms":1048},{"cell_metrics":{"cells":31,"propagators":3},"file":"test-bare-methods.rkt","heartbeats":{"cell_allocs":524,"constraint_count":0,"constraint_retries":0,"elaborate_steps":284,"infer_steps":270,"meta_created":17,"meta_solved":17,"prop_allocs":0,"prop_firings":0,"reduce_steps":873,"resolution_cycles":16,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":174,"zonk_steps":421},"memory":{"gc_ms":53,"mem_after_bytes":136417648,"mem_before_bytes":136406584,"mem_retained_bytes":11064},"phases":{"elaborate_ms":126,"parse_ms":0,"qtt_ms":198,"reduce_ms":838,"trait_resolve_ms":0,"type_check_ms":341,"zonk_ms":0},"status":"pass","tests":12,"wall_ms":2930},{"cell_metrics":{"cells":31,"propagators":0},"file":"test-capability-05.rkt","heartbeats":{"cell_allocs":7371,"constraint_count":0,"constraint_retries":0,"elaborate_steps":59,"infer_steps":48,"meta_created":1,"meta_solved":1,"prop_allocs":0,"prop_firings":0,"reduce_steps":30,"resolution_cycles":1,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":39,"zonk_steps":63},"memory":{"gc_ms":49,"mem_after_bytes":136713864,"mem_before_bytes":136670640,"mem_retained_bytes":43224},"phases":{"elaborate_ms":19,"parse_ms":0,"qtt_ms":13,"reduce_ms":0,"trait_resolve_ms":0,"type_check_ms":19,"zonk_ms":0},"status":"pass","tests":21,"wall_ms":1333},{"cell_metrics":{"cells":18,"propagators":0},"file":"test-abstract-domains.rkt","heartbeats":{"cell_allocs":308,"constraint_count":0,"constraint_retries":0,"elaborate_steps":60,"infer_steps":174,"meta_created":16,"meta_solved":16,"prop_allocs":0,"prop_firings":0,"reduce_steps":487,"resolution_cycles":16,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":72,"zonk_steps":269},"memory":{"gc_ms":46,"mem_after_bytes":135977352,"mem_before_bytes":135105360,"mem_retained_bytes":871992},"phases":{"elaborate_ms":115,"parse_ms":0,"qtt_ms":1,"reduce_ms":447,"trait_resolve_ms":0,"type_check_ms":542,"zonk_ms":0},"status":"pass","tests":18,"wall_ms":4882},{"file":"test-champ-owner-id.rkt","status":"pass","tests":17,"wall_ms":173},{"cell_metrics":{"cells":61,"propagators":0},"file":"test-capability-04.rkt","heartbeats":{"cell_allocs":1057,"constraint_count":0,"constraint_retries":0,"elaborate_steps":219,"infer_steps":196,"meta_created":9,"meta_solved":4,"prop_allocs":0,"prop_firings":0,"reduce_steps":118,"resolution_cycles":4,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":138,"zonk_steps":215},"memory":{"gc_ms":50,"mem_after_bytes":136496176,"mem_before_bytes":136393496,"mem_retained_bytes":102680},"phases":{"elaborate_ms":80,"parse_ms":0,"qtt_ms":53,"reduce_ms":0,"trait_resolve_ms":0,"type_check_ms":91,"zonk_ms":1},"status":"pass","tests":12,"wall_ms":2011},{"cell_metrics":{"cells":17,"propagators":0},"file":"test-capability-06.rkt","heartbeats":{"cell_allocs":11419,"constraint_count":0,"constraint_retries":0,"elaborate_steps":11,"infer_steps":12,"meta_created":1,"meta_solved":1,"prop_allocs":0,"prop_firings":0,"reduce_steps":6,"resolution_cycles":1,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":9,"zonk_steps":15},"memory":{"gc_ms":52,"mem_after_bytes":137988320,"mem_before_bytes":137946808,"mem_retained_bytes":41512},"phases":{"elaborate_ms":5,"parse_ms":0,"qtt_ms":5,"reduce_ms":0,"trait_resolve_ms":0,"type_check_ms":5,"zonk_ms":0},"status":"pass","tests":16,"wall_ms":1684},{"cell_metrics":{"cells":41,"propagators":0},"file":"test-capability-08.rkt","heartbeats":{"cell_allocs":11899,"constraint_count":0,"constraint_retries":0,"elaborate_steps":125,"infer_steps":109,"meta_created":5,"meta_solved":5,"prop_allocs":0,"prop_firings":0,"reduce_steps":138,"resolution_cycles":5,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":87,"zonk_steps":145},"memory":{"gc_ms":58,"mem_after_bytes":139081952,"mem_before_bytes":139021656,"mem_retained_bytes":60296},"phases":{"elaborate_ms":44,"parse_ms":0,"qtt_ms":40,"reduce_ms":0,"trait_resolve_ms":0,"type_check_ms":51,"zonk_ms":0},"status":"pass","tests":19,"wall_ms":1808},{"cell_metrics":{"cells":48,"propagators":0},"file":"test-auto-implicits.rkt","heartbeats":{"cell_allocs":1157,"constraint_count":0,"constraint_retries":0,"elaborate_steps":276,"infer_steps":231,"meta_created":19,"meta_solved":19,"prop_allocs":0,"prop_firings":0,"reduce_steps":430,"resolution_cycles":19,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":155,"zonk_steps":389},"memory":{"gc_ms":46,"mem_after_bytes":135186136,"mem_before_bytes":135142760,"mem_retained_bytes":43376},"phases":{"elaborate_ms":129,"parse_ms":0,"qtt_ms":72,"reduce_ms":152,"trait_resolve_ms":0,"type_check_ms":216,"zonk_ms":0},"status":"pass","tests":15,"wall_ms":2465},{"cell_metrics":{"cells":17,"propagators":0},"file":"test-coherence.rkt","heartbeats":{"cell_allocs":48,"constraint_count":0,"constraint_retries":0,"elaborate_steps":13,"infer_steps":11,"meta_created":0,"meta_solved":0,"prop_allocs":0,"prop_firings":0,"reduce_steps":77,"resolution_cycles":0,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":0,"zonk_steps":14},"memory":{"gc_ms":48,"mem_after_bytes":138201648,"mem_before_bytes":138144400,"mem_retained_bytes":57248},"phases":{"elaborate_ms":4,"parse_ms":0,"qtt_ms":0,"reduce_ms":70,"trait_resolve_ms":0,"type_check_ms":4,"zonk_ms":0},"status":"pass","tests":13,"wall_ms":555},{"cell_metrics":{"cells":71,"propagators":0},"file":"test-capability-07.rkt","heartbeats":{"cell_allocs":2767,"constraint_count":0,"constraint_retries":0,"elaborate_steps":188,"infer_steps":152,"meta_created":5,"meta_solved":3,"prop_allocs":0,"prop_firings":0,"reduce_steps":107,"resolution_cycles":3,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":96,"zonk_steps":204},"memory":{"gc_ms":51,"mem_after_bytes":139146072,"mem_before_bytes":138967720,"mem_retained_bytes":178352},"phases":{"elaborate_ms":64,"parse_ms":0,"qtt_ms":49,"reduce_ms":0,"trait_resolve_ms":0,"type_check_ms":67,"zonk_ms":0},"status":"pass","tests":19,"wall_ms":2498},{"cell_metrics":{"cells":17,"propagators":0},"file":"test-coercion-warnings.rkt","heartbeats":{"cell_allocs":208,"constraint_count":0,"constraint_retries":0,"elaborate_steps":41,"infer_steps":41,"meta_created":0,"meta_solved":0,"prop_allocs":0,"prop_firings":0,"reduce_steps":47,"resolution_cycles":0,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":0,"zonk_steps":48},"memory":{"gc_ms":49,"mem_after_bytes":136811168,"mem_before_bytes":136811504,"mem_retained_bytes":0},"phases":{"elaborate_ms":10,"parse_ms":0,"qtt_ms":0,"reduce_ms":22,"trait_resolve_ms":0,"type_check_ms":12,"zonk_ms":2},"status":"pass","tests":13,"wall_ms":1446},{"cell_metrics":{"cells":17,"propagators":0},"file":"test-collection-conversions.rkt","heartbeats":{"cell_allocs":163,"constraint_count":0,"constraint_retries":0,"elaborate_steps":35,"infer_steps":80,"meta_created":3,"meta_solved":3,"prop_allocs":0,"prop_firings":0,"reduce_steps":150,"resolution_cycles":3,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":24,"zonk_steps":127},"memory":{"gc_ms":48,"mem_after_bytes":139170232,"mem_before_bytes":139169912,"mem_retained_bytes":320},"phases":{"elaborate_ms":15,"parse_ms":0,"qtt_ms":0,"reduce_ms":141,"trait_resolve_ms":0,"type_check_ms":67,"zonk_ms":0},"status":"pass","tests":11,"wall_ms":1635},{"cell_metrics":{"cells":87,"propagators":0},"file":"test-capability-05b.rkt","heartbeats":{"cell_allocs":12581,"constraint_count":0,"constraint_retries":0,"elaborate_steps":369,"infer_steps":333,"meta_created":17,"meta_solved":16,"prop_allocs":0,"prop_firings":0,"reduce_steps":190,"resolution_cycles":16,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":262,"zonk_steps":436},"memory":{"gc_ms":50,"mem_after_bytes":138720744,"mem_before_bytes":138665112,"mem_retained_bytes":55632},"phases":{"elaborate_ms":130,"parse_ms":0,"qtt_ms":122,"reduce_ms":0,"trait_resolve_ms":0,"type_check_ms":142,"zonk_ms":0},"status":"pass","tests":24,"wall_ms":4047},{"cell_metrics":{"cells":17,"propagators":0},"file":"test-collection-traits-01.rkt","heartbeats":{"cell_allocs":256,"constraint_count":0,"constraint_retries":0,"elaborate_steps":35,"infer_steps":62,"meta_created":0,"meta_solved":0,"prop_allocs":0,"prop_firings":0,"reduce_steps":98,"resolution_cycles":0,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":14,"zonk_steps":694},"memory":{"gc_ms":49,"mem_after_bytes":138884520,"mem_before_bytes":138882120,"mem_retained_bytes":2400},"phases":{"elaborate_ms":8,"parse_ms":0,"qtt_ms":0,"reduce_ms":136,"trait_resolve_ms":0,"type_check_ms":43,"zonk_ms":0},"status":"pass","tests":10,"wall_ms":1523},{"file":"test-config-audit.rkt","status":"pass","tests":39,"wall_ms":355},{"cell_metrics":{"cells":17,"propagators":0},"file":"test-constraint-amb-01.rkt","heartbeats":{"cell_allocs":48,"constraint_count":0,"constraint_retries":0,"elaborate_steps":15,"infer_steps":15,"meta_created":0,"meta_solved":0,"prop_allocs":0,"prop_firings":0,"reduce_steps":51,"resolution_cycles":0,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":0,"zonk_steps":18},"memory":{"gc_ms":49,"mem_after_bytes":139883720,"mem_before_bytes":139852304,"mem_retained_bytes":31416},"phases":{"elaborate_ms":4,"parse_ms":0,"qtt_ms":0,"reduce_ms":30,"trait_resolve_ms":0,"type_check_ms":5,"zonk_ms":0},"status":"pass","tests":10,"wall_ms":547},{"file":"test-constraint-cell-01.rkt","status":"pass","tests":33,"wall_ms":228},{"cell_metrics":{"cells":17,"propagators":0},"file":"test-confluence-01.rkt","heartbeats":{"cell_allocs":64,"constraint_count":0,"constraint_retries":0,"elaborate_steps":18,"infer_steps":18,"meta_created":0,"meta_solved":0,"prop_allocs":0,"prop_firings":0,"reduce_steps":38,"resolution_cycles":0,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":0,"zonk_steps":22},"memory":{"gc_ms":48,"mem_after_bytes":140204696,"mem_before_bytes":140168496,"mem_retained_bytes":36200},"phases":{"elaborate_ms":5,"parse_ms":0,"qtt_ms":0,"reduce_ms":21,"trait_resolve_ms":0,"type_check_ms":5,"zonk_ms":0},"status":"pass","tests":58,"wall_ms":971},{"cell_metrics":{"cells":19,"propagators":0},"file":"test-cond-01.rkt","heartbeats":{"cell_allocs":360,"constraint_count":0,"constraint_retries":0,"elaborate_steps":304,"infer_steps":315,"meta_created":22,"meta_solved":22,"prop_allocs":0,"prop_firings":0,"reduce_steps":407,"resolution_cycles":22,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":222,"zonk_steps":355},"memory":{"gc_ms":50,"mem_after_bytes":139755896,"mem_before_bytes":139811784,"mem_retained_bytes":0},"phases":{"elaborate_ms":70,"parse_ms":0,"qtt_ms":155,"reduce_ms":70,"trait_resolve_ms":0,"type_check_ms":219,"zonk_ms":0},"status":"pass","tests":7,"wall_ms":1633},{"cell_metrics":{"cells":14,"propagators":0},"file":"test-cfa-analysis-01.rkt","heartbeats":{"cell_allocs":0,"constraint_count":0,"constraint_retries":0,"elaborate_steps":0,"infer_steps":0,"meta_created":0,"meta_solved":0,"prop_allocs":0,"prop_firings":0,"reduce_steps":0,"resolution_cycles":0,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":0,"zonk_steps":0},"memory":{"gc_ms":57,"mem_after_bytes":157271008,"mem_before_bytes":157024728,"mem_retained_bytes":246280},"phases":{"elaborate_ms":0,"parse_ms":0,"qtt_ms":0,"reduce_ms":0,"trait_resolve_ms":0,"type_check_ms":0,"zonk_ms":0},"status":"pass","tests":14,"wall_ms":5264},{"cell_metrics":{"cells":17,"propagators":0},"file":"test-constraint-chain-01.rkt","heartbeats":{"cell_allocs":64,"constraint_count":0,"constraint_retries":0,"elaborate_steps":22,"infer_steps":22,"meta_created":0,"meta_solved":0,"prop_allocs":0,"prop_firings":0,"reduce_steps":78,"resolution_cycles":0,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":0,"zonk_steps":26},"memory":{"gc_ms":51,"mem_after_bytes":140841064,"mem_before_bytes":140849472,"mem_retained_bytes":0},"phases":{"elaborate_ms":6,"parse_ms":0,"qtt_ms":0,"reduce_ms":34,"trait_resolve_ms":0,"type_check_ms":5,"zonk_ms":0},"status":"pass","tests":25,"wall_ms":722},{"file":"test-constraint-retry-propagator.rkt","status":"pass","tests":16,"wall_ms":233},{"cell_metrics":{"cells":17,"propagators":0},"file":"test-constraint-propagators-01.rkt","heartbeats":{"cell_allocs":48,"constraint_count":0,"constraint_retries":0,"elaborate_steps":15,"infer_steps":15,"meta_created":0,"meta_solved":0,"prop_allocs":0,"prop_firings":0,"reduce_steps":51,"resolution_cycles":0,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":0,"zonk_steps":18},"memory":{"gc_ms":58,"mem_after_bytes":157560112,"mem_before_bytes":157561648,"mem_retained_bytes":0},"phases":{"elaborate_ms":4,"parse_ms":0,"qtt_ms":0,"reduce_ms":29,"trait_resolve_ms":0,"type_check_ms":3,"zonk_ms":0},"status":"pass","tests":21,"wall_ms":708},{"cell_metrics":{"cells":17,"propagators":0},"file":"test-collection-traits-02.rkt","heartbeats":{"cell_allocs":496,"constraint_count":0,"constraint_retries":0,"elaborate_steps":213,"infer_steps":348,"meta_created":0,"meta_solved":0,"prop_allocs":0,"prop_firings":0,"reduce_steps":504,"resolution_cycles":0,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":85,"zonk_steps":1002},"memory":{"gc_ms":50,"mem_after_bytes":137282640,"mem_before_bytes":137274792,"mem_retained_bytes":7848},"phases":{"elaborate_ms":54,"parse_ms":0,"qtt_ms":0,"reduce_ms":803,"trait_resolve_ms":0,"type_check_ms":307,"zonk_ms":0},"status":"pass","tests":16,"wall_ms":3208},{"cell_metrics":{"cells":25,"propagators":0},"file":"test-cfa-analysis-02.rkt","heartbeats":{"cell_allocs":72,"constraint_count":0,"constraint_retries":0,"elaborate_steps":75,"infer_steps":33,"meta_created":0,"meta_solved":0,"prop_allocs":0,"prop_firings":0,"reduce_steps":21,"resolution_cycles":0,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":36,"zonk_steps":78},"memory":{"gc_ms":60,"mem_after_bytes":157564872,"mem_before_bytes":157523480,"mem_retained_bytes":41392},"phases":{"elaborate_ms":19,"parse_ms":0,"qtt_ms":27,"reduce_ms":0,"trait_resolve_ms":0,"type_check_ms":33,"zonk_ms":0},"status":"pass","tests":9,"wall_ms":5742},{"file":"test-cross-domain-propagator.rkt","status":"pass","tests":8,"wall_ms":70},{"cell_metrics":{"cells":23,"propagators":3},"file":"test-constraint-inference.rkt","heartbeats":{"cell_allocs":293,"constraint_count":0,"constraint_retries":0,"elaborate_steps":107,"infer_steps":97,"meta_created":6,"meta_solved":5,"prop_allocs":0,"prop_firings":0,"reduce_steps":196,"resolution_cycles":6,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":51,"zonk_steps":105},"memory":{"gc_ms":54,"mem_after_bytes":140542816,"mem_before_bytes":140527976,"mem_retained_bytes":14840},"phases":{"elaborate_ms":40,"parse_ms":0,"qtt_ms":36,"reduce_ms":111,"trait_resolve_ms":0,"type_check_ms":96,"zonk_ms":0},"status":"pass","tests":11,"wall_ms":1604},{"cell_metrics":{"cells":17,"propagators":0},"file":"test-cross-family-conversions-01.rkt","heartbeats":{"cell_allocs":64,"constraint_count":0,"constraint_retries":0,"elaborate_steps":8,"infer_steps":8,"meta_created":0,"meta_solved":0,"prop_allocs":0,"prop_firings":0,"reduce_steps":12,"resolution_cycles":0,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":0,"zonk_steps":12},"memory":{"gc_ms":49,"mem_after_bytes":138389624,"mem_before_bytes":138379040,"mem_retained_bytes":10584},"phases":{"elaborate_ms":4,"parse_ms":0,"qtt_ms":0,"reduce_ms":4,"trait_resolve_ms":0,"type_check_ms":4,"zonk_ms":0},"status":"pass","tests":16,"wall_ms":593},{"file":"test-ctor-registry.rkt","status":"pass","tests":40,"wall_ms":323},{"cell_metrics":{"cells":17,"propagators":0},"file":"test-constraint-postponement.rkt","heartbeats":{"cell_allocs":178,"constraint_count":0,"constraint_retries":0,"elaborate_steps":48,"infer_steps":144,"meta_created":17,"meta_solved":17,"prop_allocs":0,"prop_firings":0,"reduce_steps":517,"resolution_cycles":17,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":51,"zonk_steps":160},"memory":{"gc_ms":50,"mem_after_bytes":140245880,"mem_before_bytes":140249472,"mem_retained_bytes":0},"phases":{"elaborate_ms":71,"parse_ms":0,"qtt_ms":0,"reduce_ms":640,"trait_resolve_ms":0,"type_check_ms":224,"zonk_ms":0},"status":"pass","tests":21,"wall_ms":2318},{"file":"test-defmacro.rkt","status":"pass","tests":53,"wall_ms":250},{"cell_metrics":{"cells":17,"propagators":0},"file":"test-decimal-literal.rkt","heartbeats":{"cell_allocs":144,"constraint_count":0,"constraint_retries":0,"elaborate_steps":12,"infer_steps":11,"meta_created":0,"meta_solved":0,"prop_allocs":0,"prop_firings":0,"reduce_steps":13,"resolution_cycles":0,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":0,"zonk_steps":16},"memory":{"gc_ms":53,"mem_after_bytes":138779248,"mem_before_bytes":138781000,"mem_retained_bytes":0},"phases":{"elaborate_ms":1,"parse_ms":0,"qtt_ms":0,"reduce_ms":6,"trait_resolve_ms":0,"type_check_ms":2,"zonk_ms":0},"status":"pass","tests":17,"wall_ms":1110},{"file":"test-dot-access-01.rkt","status":"pass","tests":14,"wall_ms":139},{"file":"test-effect-bridge-01.rkt","status":"pass","tests":18,"wall_ms":155},{"cell_metrics":{"cells":22,"propagators":0},"file":"test-core-prelude.rkt","heartbeats":{"cell_allocs":364,"constraint_count":0,"constraint_retries":0,"elaborate_steps":102,"infer_steps":185,"meta_created":3,"meta_solved":3,"prop_allocs":0,"prop_firings":0,"reduce_steps":294,"resolution_cycles":3,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":58,"zonk_steps":152},"memory":{"gc_ms":50,"mem_after_bytes":141550368,"mem_before_bytes":141552296,"mem_retained_bytes":0},"phases":{"elaborate_ms":40,"parse_ms":0,"qtt_ms":6,"reduce_ms":195,"trait_resolve_ms":0,"type_check_ms":214,"zonk_ms":0},"status":"pass","tests":11,"wall_ms":2437},{"file":"test-effect-collection-01.rkt","status":"pass","tests":19,"wall_ms":317},{"cell_metrics":{"cells":17,"propagators":0},"file":"test-cross-family-conversions-03.rkt","heartbeats":{"cell_allocs":208,"constraint_count":0,"constraint_retries":0,"elaborate_steps":50,"infer_steps":104,"meta_created":0,"meta_solved":0,"prop_allocs":0,"prop_firings":0,"reduce_steps":207,"resolution_cycles":0,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":24,"zonk_steps":100},"memory":{"gc_ms":60,"mem_after_bytes":158552008,"mem_before_bytes":158554640,"mem_retained_bytes":0},"phases":{"elaborate_ms":12,"parse_ms":0,"qtt_ms":0,"reduce_ms":94,"trait_resolve_ms":0,"type_check_ms":115,"zonk_ms":0},"status":"pass","tests":17,"wall_ms":2235},{"file":"test-effect-executor-01.rkt","status":"pass","tests":19,"wall_ms":241},{"file":"test-effect-ordering-01.rkt","status":"pass","tests":30,"wall_ms":284},{"cell_metrics":{"cells":17,"propagators":0},"file":"test-cross-family-conversions-02.rkt","heartbeats":{"cell_allocs":240,"constraint_count":0,"constraint_retries":0,"elaborate_steps":71,"infer_steps":164,"meta_created":0,"meta_solved":0,"prop_allocs":0,"prop_firings":0,"reduce_steps":326,"resolution_cycles":0,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":41,"zonk_steps":138},"memory":{"gc_ms":60,"mem_after_bytes":157661464,"mem_before_bytes":157690024,"mem_retained_bytes":0},"phases":{"elaborate_ms":18,"parse_ms":0,"qtt_ms":0,"reduce_ms":150,"trait_resolve_ms":0,"type_check_ms":161,"zonk_ms":0},"status":"pass","tests":15,"wall_ms":2498},{"file":"test-effect-position-01.rkt","status":"pass","tests":54,"wall_ms":364},{"file":"test-elaborator-network.rkt","status":"pass","tests":22,"wall_ms":257},{"file":"test-elab-speculation.rkt","status":"pass","tests":18,"wall_ms":380},{"file":"test-elaborator.rkt","status":"pass","tests":40,"wall_ms":399},{"cell_metrics":{"cells":23,"propagators":0},"file":"test-char-string-01.rkt","heartbeats":{"cell_allocs":641,"constraint_count":0,"constraint_retries":0,"elaborate_steps":47,"infer_steps":32,"meta_created":0,"meta_solved":0,"prop_allocs":0,"prop_firings":0,"reduce_steps":54,"resolution_cycles":0,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":0,"zonk_steps":56},"memory":{"gc_ms":54,"mem_after_bytes":153041720,"mem_before_bytes":153045736,"mem_retained_bytes":0},"phases":{"elaborate_ms":18,"parse_ms":0,"qtt_ms":0,"reduce_ms":21,"trait_resolve_ms":0,"type_check_ms":18,"zonk_ms":0},"status":"pass","tests":19,"wall_ms":8471},{"file":"test-eliminator-typing.rkt","status":"pass","tests":26,"wall_ms":924},{"file":"test-errors.rkt","status":"pass","tests":13,"wall_ms":70},{"cell_metrics":{"cells":17,"propagators":0},"file":"test-char-string-02.rkt","heartbeats":{"cell_allocs":304,"constraint_count":0,"constraint_retries":0,"elaborate_steps":37,"infer_steps":55,"meta_created":0,"meta_solved":0,"prop_allocs":0,"prop_firings":0,"reduce_steps":129,"resolution_cycles":0,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":0,"zonk_steps":91},"memory":{"gc_ms":59,"mem_after_bytes":156103568,"mem_before_bytes":156058760,"mem_retained_bytes":44808},"phases":{"elaborate_ms":10,"parse_ms":0,"qtt_ms":0,"reduce_ms":48,"trait_resolve_ms":0,"type_check_ms":26,"zonk_ms":0},"status":"pass","tests":19,"wall_ms":8745},{"file":"test-explain-provenance-01.rkt","status":"pass","tests":16,"wall_ms":172},{"cell_metrics":{"cells":31,"propagators":3},"file":"test-collection-fns-01.rkt","heartbeats":{"cell_allocs":615,"constraint_count":0,"constraint_retries":0,"elaborate_steps":189,"infer_steps":490,"meta_created":83,"meta_solved":83,"prop_allocs":0,"prop_firings":0,"reduce_steps":1641,"resolution_cycles":78,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":175,"zonk_steps":569},"memory":{"gc_ms":85,"mem_after_bytes":136052272,"mem_before_bytes":136042000,"mem_retained_bytes":10272},"phases":{"elaborate_ms":532,"parse_ms":0,"qtt_ms":5,"reduce_ms":5381,"trait_resolve_ms":0,"type_check_ms":923,"zonk_ms":0},"status":"pass","tests":14,"wall_ms":8378},{"cell_metrics":{"cells":64,"propagators":0},"file":"test-definitional-tree-01.rkt","heartbeats":{"cell_allocs":945,"constraint_count":0,"constraint_retries":0,"elaborate_steps":278,"infer_steps":237,"meta_created":5,"meta_solved":4,"prop_allocs":0,"prop_firings":0,"reduce_steps":79,"resolution_cycles":4,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":61,"zonk_steps":283},"memory":{"gc_ms":52,"mem_after_bytes":142277528,"mem_before_bytes":142269480,"mem_retained_bytes":8048},"phases":{"elaborate_ms":78,"parse_ms":0,"qtt_ms":1,"reduce_ms":0,"trait_resolve_ms":0,"type_check_ms":82,"zonk_ms":0},"status":"pass","tests":39,"wall_ms":3347},{"cell_metrics":{"cells":20,"propagators":0},"file":"test-error-messages.rkt","heartbeats":{"cell_allocs":141,"constraint_count":0,"constraint_retries":0,"elaborate_steps":32,"infer_steps":46,"meta_created":2,"meta_solved":2,"prop_allocs":0,"prop_firings":0,"reduce_steps":68,"resolution_cycles":2,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":12,"zonk_steps":28},"memory":{"gc_ms":59,"mem_after_bytes":155725440,"mem_before_bytes":155730056,"mem_retained_bytes":0},"phases":{"elaborate_ms":10,"parse_ms":0,"qtt_ms":1,"reduce_ms":47,"trait_resolve_ms":0,"type_check_ms":32,"zonk_ms":0},"status":"pass","tests":29,"wall_ms":1415},{"cell_metrics":{"cells":27,"propagators":0},"file":"test-foreign-block.rkt","heartbeats":{"cell_allocs":493,"constraint_count":0,"constraint_retries":0,"elaborate_steps":56,"infer_steps":52,"meta_created":0,"meta_solved":0,"prop_allocs":0,"prop_firings":0,"reduce_steps":70,"resolution_cycles":0,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":8,"zonk_steps":51},"memory":{"gc_ms":50,"mem_after_bytes":136526896,"mem_before_bytes":136514360,"mem_retained_bytes":12536},"phases":{"elaborate_ms":52,"parse_ms":0,"qtt_ms":0,"reduce_ms":22,"trait_resolve_ms":0,"type_check_ms":19,"zonk_ms":0},"status":"pass","tests":13,"wall_ms":1140},{"cell_metrics":{"cells":25,"propagators":3},"file":"test-collection-fns-02.rkt","heartbeats":{"cell_allocs":512,"constraint_count":0,"constraint_retries":0,"elaborate_steps":156,"infer_steps":491,"meta_created":91,"meta_solved":91,"prop_allocs":0,"prop_firings":0,"reduce_steps":1585,"resolution_cycles":89,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":153,"zonk_steps":580},"memory":{"gc_ms":53,"mem_after_bytes":138718736,"mem_before_bytes":138731440,"mem_retained_bytes":0},"phases":{"elaborate_ms":573,"parse_ms":0,"qtt_ms":2,"reduce_ms":5783,"trait_resolve_ms":0,"type_check_ms":970,"zonk_ms":2},"status":"pass","tests":15,"wall_ms":9203},{"file":"test-functor-ws-01.rkt","status":"pass","tests":6,"wall_ms":113},{"cell_metrics":{"cells":17,"propagators":0},"file":"test-eq-ord-extended-01.rkt","heartbeats":{"cell_allocs":192,"constraint_count":0,"constraint_retries":0,"elaborate_steps":36,"infer_steps":84,"meta_created":0,"meta_solved":0,"prop_allocs":0,"prop_firings":0,"reduce_steps":206,"resolution_cycles":0,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":24,"zonk_steps":72},"memory":{"gc_ms":53,"mem_after_bytes":143304696,"mem_before_bytes":143317840,"mem_retained_bytes":0},"phases":{"elaborate_ms":12,"parse_ms":0,"qtt_ms":0,"reduce_ms":226,"trait_resolve_ms":0,"type_check_ms":57,"zonk_ms":0},"status":"pass","tests":12,"wall_ms":2940},{"cell_metrics":{"cells":28,"propagators":0},"file":"test-eq-let-surface-01.rkt","heartbeats":{"cell_allocs":377,"constraint_count":0,"constraint_retries":0,"elaborate_steps":133,"infer_steps":189,"meta_created":20,"meta_solved":20,"prop_allocs":0,"prop_firings":0,"reduce_steps":856,"resolution_cycles":20,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":66,"zonk_steps":238},"memory":{"gc_ms":55,"mem_after_bytes":143696952,"mem_before_bytes":143729760,"mem_retained_bytes":0},"phases":{"elaborate_ms":85,"parse_ms":0,"qtt_ms":100,"reduce_ms":892,"trait_resolve_ms":0,"type_check_ms":162,"zonk_ms":0},"status":"pass","tests":13,"wall_ms":3145},{"file":"test-generators.rkt","status":"pass","tests":5,"wall_ms":346},{"cell_metrics":{"cells":50,"propagators":0},"file":"test-free-ordering.rkt","heartbeats":{"cell_allocs":1554,"constraint_count":0,"constraint_retries":0,"elaborate_steps":195,"infer_steps":150,"meta_created":0,"meta_solved":0,"prop_allocs":0,"prop_firings":0,"reduce_steps":187,"resolution_cycles":0,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":58,"zonk_steps":206},"memory":{"gc_ms":61,"mem_after_bytes":156244088,"mem_before_bytes":156249688,"mem_retained_bytes":0},"phases":{"elaborate_ms":56,"parse_ms":0,"qtt_ms":18,"reduce_ms":51,"trait_resolve_ms":0,"type_check_ms":74,"zonk_ms":0},"status":"pass","tests":11,"wall_ms":1670},{"cell_metrics":{"cells":17,"propagators":0},"file":"test-eq-ord-extended-02.rkt","heartbeats":{"cell_allocs":266,"constraint_count":0,"constraint_retries":0,"elaborate_steps":106,"infer_steps":240,"meta_created":10,"meta_solved":10,"prop_allocs":0,"prop_firings":0,"reduce_steps":682,"resolution_cycles":10,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":80,"zonk_steps":290},"memory":{"gc_ms":65,"mem_after_bytes":158999928,"mem_before_bytes":159006048,"mem_retained_bytes":0},"phases":{"elaborate_ms":73,"parse_ms":0,"qtt_ms":0,"reduce_ms":1060,"trait_resolve_ms":0,"type_check_ms":357,"zonk_ms":0},"status":"pass","tests":12,"wall_ms":4392},{"cell_metrics":{"cells":19,"propagators":0},"file":"test-foreign.rkt","heartbeats":{"cell_allocs":558,"constraint_count":0,"constraint_retries":0,"elaborate_steps":143,"infer_steps":114,"meta_created":0,"meta_solved":0,"prop_allocs":0,"prop_firings":0,"reduce_steps":232,"resolution_cycles":0,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":11,"zonk_steps":134},"memory":{"gc_ms":51,"mem_after_bytes":142567600,"mem_before_bytes":142571248,"mem_retained_bytes":0},"phases":{"elaborate_ms":43,"parse_ms":0,"qtt_ms":8,"reduce_ms":73,"trait_resolve_ms":0,"type_check_ms":61,"zonk_ms":0},"status":"pass","tests":38,"wall_ms":3814},{"cell_metrics":{"cells":19,"propagators":0},"file":"test-galois-connection.rkt","heartbeats":{"cell_allocs":274,"constraint_count":0,"constraint_retries":0,"elaborate_steps":55,"infer_steps":203,"meta_created":34,"meta_solved":34,"prop_allocs":0,"prop_firings":0,"reduce_steps":563,"resolution_cycles":34,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":108,"zonk_steps":280},"memory":{"gc_ms":50,"mem_after_bytes":137542168,"mem_before_bytes":137565120,"mem_retained_bytes":0},"phases":{"elaborate_ms":139,"parse_ms":0,"qtt_ms":0,"reduce_ms":335,"trait_resolve_ms":0,"type_check_ms":456,"zonk_ms":0},"status":"pass","tests":14,"wall_ms":2693},{"file":"test-gde-errors.rkt","status":"pass","tests":24,"wall_ms":2348},{"cell_metrics":{"cells":27,"propagators":0},"file":"test-dot-access-02.rkt","heartbeats":{"cell_allocs":386,"constraint_count":0,"constraint_retries":0,"elaborate_steps":85,"infer_steps":77,"meta_created":18,"meta_solved":18,"prop_allocs":0,"prop_firings":0,"reduce_steps":172,"resolution_cycles":18,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":23,"zonk_steps":143},"memory":{"gc_ms":59,"mem_after_bytes":157286248,"mem_before_bytes":157241592,"mem_retained_bytes":44656},"phases":{"elaborate_ms":24,"parse_ms":0,"qtt_ms":13,"reduce_ms":55,"trait_resolve_ms":0,"type_check_ms":59,"zonk_ms":0},"status":"pass","tests":7,"wall_ms":6581},{"cell_metrics":{"cells":17,"propagators":0},"file":"test-first-rest-01.rkt","heartbeats":{"cell_allocs":357,"constraint_count":0,"constraint_retries":0,"elaborate_steps":103,"infer_steps":318,"meta_created":62,"meta_solved":62,"prop_allocs":0,"prop_firings":0,"reduce_steps":900,"resolution_cycles":58,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":100,"zonk_steps":418},"memory":{"gc_ms":60,"mem_after_bytes":161560504,"mem_before_bytes":161576008,"mem_retained_bytes":0},"phases":{"elaborate_ms":313,"parse_ms":0,"qtt_ms":6,"reduce_ms":1376,"trait_resolve_ms":0,"type_check_ms":557,"zonk_ms":0},"status":"pass","tests":15,"wall_ms":4668},{"cell_metrics":{"cells":17,"propagators":0},"file":"test-generic-arith-02.rkt","heartbeats":{"cell_allocs":184,"constraint_count":0,"constraint_retries":0,"elaborate_steps":34,"infer_steps":94,"meta_created":8,"meta_solved":8,"prop_allocs":0,"prop_firings":0,"reduce_steps":379,"resolution_cycles":8,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":38,"zonk_steps":156},"memory":{"gc_ms":58,"mem_after_bytes":156837088,"mem_before_bytes":156855232,"mem_retained_bytes":0},"phases":{"elaborate_ms":37,"parse_ms":0,"qtt_ms":0,"reduce_ms":401,"trait_resolve_ms":0,"type_check_ms":150,"zonk_ms":0},"status":"pass","tests":11,"wall_ms":2419},{"cell_metrics":{"cells":17,"propagators":0},"file":"test-generic-from.rkt","heartbeats":{"cell_allocs":192,"constraint_count":0,"constraint_retries":0,"elaborate_steps":36,"infer_steps":36,"meta_created":0,"meta_solved":0,"prop_allocs":0,"prop_firings":0,"reduce_steps":28,"resolution_cycles":0,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":0,"zonk_steps":39},"memory":{"gc_ms":50,"mem_after_bytes":142895744,"mem_before_bytes":142897176,"mem_retained_bytes":0},"phases":{"elaborate_ms":7,"parse_ms":0,"qtt_ms":0,"reduce_ms":9,"trait_resolve_ms":0,"type_check_ms":13,"zonk_ms":0},"status":"pass","tests":12,"wall_ms":1486},{"cell_metrics":{"cells":17,"propagators":0},"file":"test-generic-arith-01.rkt","heartbeats":{"cell_allocs":528,"constraint_count":0,"constraint_retries":0,"elaborate_steps":115,"infer_steps":95,"meta_created":0,"meta_solved":0,"prop_allocs":0,"prop_firings":0,"reduce_steps":65,"resolution_cycles":0,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":0,"zonk_steps":112},"memory":{"gc_ms":55,"mem_after_bytes":149868072,"mem_before_bytes":149870248,"mem_retained_bytes":0},"phases":{"elaborate_ms":20,"parse_ms":0,"qtt_ms":0,"reduce_ms":36,"trait_resolve_ms":0,"type_check_ms":21,"zonk_ms":0},"status":"pass","tests":33,"wall_ms":4421},{"cell_metrics":{"cells":19,"propagators":0},"file":"test-guards-01.rkt","heartbeats":{"cell_allocs":418,"constraint_count":0,"constraint_retries":0,"elaborate_steps":312,"infer_steps":302,"meta_created":14,"meta_solved":14,"prop_allocs":0,"prop_firings":0,"reduce_steps":425,"resolution_cycles":14,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":204,"zonk_steps":362},"memory":{"gc_ms":52,"mem_after_bytes":143321256,"mem_before_bytes":143283448,"mem_retained_bytes":37808},"phases":{"elaborate_ms":77,"parse_ms":0,"qtt_ms":176,"reduce_ms":100,"trait_resolve_ms":0,"type_check_ms":190,"zonk_ms":0},"status":"pass","tests":9,"wall_ms":1973},{"cell_metrics":{"cells":29,"propagators":0},"file":"test-extended-spec.rkt","heartbeats":{"cell_allocs":264,"constraint_count":0,"constraint_retries":0,"elaborate_steps":200,"infer_steps":98,"meta_created":0,"meta_solved":0,"prop_allocs":0,"prop_firings":0,"reduce_steps":75,"resolution_cycles":0,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":64,"zonk_steps":181},"memory":{"gc_ms":60,"mem_after_bytes":158617288,"mem_before_bytes":158622984,"mem_retained_bytes":0},"phases":{"elaborate_ms":51,"parse_ms":0,"qtt_ms":47,"reduce_ms":16,"trait_resolve_ms":0,"type_check_ms":63,"zonk_ms":0},"status":"pass","tests":78,"wall_ms":8164},{"cell_metrics":{"cells":38,"propagators":3},"file":"test-generic-ops-01-02.rkt","heartbeats":{"cell_allocs":516,"constraint_count":0,"constraint_retries":0,"elaborate_steps":656,"infer_steps":388,"meta_created":35,"meta_solved":35,"prop_allocs":0,"prop_firings":0,"reduce_steps":939,"resolution_cycles":35,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":374,"zonk_steps":959},"memory":{"gc_ms":57,"mem_after_bytes":143895096,"mem_before_bytes":143891736,"mem_retained_bytes":3360},"phases":{"elaborate_ms":338,"parse_ms":0,"qtt_ms":444,"reduce_ms":1135,"trait_resolve_ms":0,"type_check_ms":1237,"zonk_ms":0},"status":"pass","tests":5,"wall_ms":4011},{"cell_metrics":{"cells":42,"propagators":6},"file":"test-generic-ops-01-01.rkt","heartbeats":{"cell_allocs":639,"constraint_count":0,"constraint_retries":0,"elaborate_steps":675,"infer_steps":379,"meta_created":35,"meta_solved":35,"prop_allocs":0,"prop_firings":0,"reduce_steps":973,"resolution_cycles":31,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":380,"zonk_steps":972},"memory":{"gc_ms":61,"mem_after_bytes":137789488,"mem_before_bytes":137833192,"mem_retained_bytes":0},"phases":{"elaborate_ms":431,"parse_ms":0,"qtt_ms":450,"reduce_ms":1067,"trait_resolve_ms":0,"type_check_ms":1354,"zonk_ms":0},"status":"pass","tests":4,"wall_ms":4029},{"cell_metrics":{"cells":33,"propagators":0},"file":"test-generic-ops-02-01.rkt","heartbeats":{"cell_allocs":482,"constraint_count":0,"constraint_retries":0,"elaborate_steps":653,"infer_steps":372,"meta_created":32,"meta_solved":32,"prop_allocs":0,"prop_firings":0,"reduce_steps":896,"resolution_cycles":29,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":365,"zonk_steps":949},"memory":{"gc_ms":58,"mem_after_bytes":157249160,"mem_before_bytes":157249664,"mem_retained_bytes":0},"phases":{"elaborate_ms":347,"parse_ms":0,"qtt_ms":382,"reduce_ms":1234,"trait_resolve_ms":0,"type_check_ms":1347,"zonk_ms":0},"status":"pass","tests":4,"wall_ms":4130},{"cell_metrics":{"cells":26,"propagators":6},"file":"test-hasmethod-01.rkt","heartbeats":{"cell_allocs":108,"constraint_count":4,"constraint_retries":2,"elaborate_steps":92,"infer_steps":60,"meta_created":6,"meta_solved":6,"prop_allocs":0,"prop_firings":0,"reduce_steps":244,"resolution_cycles":4,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":46,"zonk_steps":136},"memory":{"gc_ms":63,"mem_after_bytes":158852712,"mem_before_bytes":158862472,"mem_retained_bytes":0},"phases":{"elaborate_ms":41,"parse_ms":0,"qtt_ms":27,"reduce_ms":147,"trait_resolve_ms":0,"type_check_ms":79,"zonk_ms":0},"status":"pass","tests":10,"wall_ms":1153},{"cell_metrics":{"cells":17,"propagators":0},"file":"test-hashable-01.rkt","heartbeats":{"cell_allocs":176,"constraint_count":0,"constraint_retries":0,"elaborate_steps":28,"infer_steps":38,"meta_created":0,"meta_solved":0,"prop_allocs":0,"prop_firings":0,"reduce_steps":689,"resolution_cycles":0,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":5,"zonk_steps":45},"memory":{"gc_ms":56,"mem_after_bytes":150005880,"mem_before_bytes":150007032,"mem_retained_bytes":0},"phases":{"elaborate_ms":7,"parse_ms":0,"qtt_ms":0,"reduce_ms":1510,"trait_resolve_ms":0,"type_check_ms":17,"zonk_ms":0},"status":"pass","tests":11,"wall_ms":3070},{"cell_metrics":{"cells":62,"propagators":3},"file":"test-hkt-errors.rkt","heartbeats":{"cell_allocs":1464,"constraint_count":1,"constraint_retries":0,"elaborate_steps":269,"infer_steps":254,"meta_created":19,"meta_solved":10,"prop_allocs":0,"prop_firings":0,"reduce_steps":369,"resolution_cycles":16,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":161,"zonk_steps":332},"memory":{"gc_ms":52,"mem_after_bytes":138254080,"mem_before_bytes":138237160,"mem_retained_bytes":16920},"phases":{"elaborate_ms":125,"parse_ms":0,"qtt_ms":142,"reduce_ms":208,"trait_resolve_ms":0,"type_check_ms":255,"zonk_ms":0},"status":"pass","tests":9,"wall_ms":1958},{"cell_metrics":{"cells":18,"propagators":0},"file":"test-hkt-kind.rkt","heartbeats":{"cell_allocs":66,"constraint_count":0,"constraint_retries":0,"elaborate_steps":28,"infer_steps":52,"meta_created":2,"meta_solved":2,"prop_allocs":0,"prop_firings":0,"reduce_steps":182,"resolution_cycles":2,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":14,"zonk_steps":48},"memory":{"gc_ms":66,"mem_after_bytes":159298568,"mem_before_bytes":159320168,"mem_retained_bytes":0},"phases":{"elaborate_ms":10,"parse_ms":0,"qtt_ms":0,"reduce_ms":165,"trait_resolve_ms":0,"type_check_ms":50,"zonk_ms":0},"status":"pass","tests":22,"wall_ms":981},{"cell_metrics":{"cells":29,"propagators":0},"file":"test-higher-rank.rkt","heartbeats":{"cell_allocs":555,"constraint_count":0,"constraint_retries":0,"elaborate_steps":249,"infer_steps":189,"meta_created":1,"meta_solved":0,"prop_allocs":0,"prop_firings":0,"reduce_steps":321,"resolution_cycles":0,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":126,"zonk_steps":297},"memory":{"gc_ms":56,"mem_after_bytes":144239624,"mem_before_bytes":144253752,"mem_retained_bytes":0},"phases":{"elaborate_ms":63,"parse_ms":0,"qtt_ms":49,"reduce_ms":117,"trait_resolve_ms":0,"type_check_ms":194,"zonk_ms":0},"status":"pass","tests":19,"wall_ms":2001},{"cell_metrics":{"cells":14,"propagators":0},"file":"test-global-constraints-01.rkt","heartbeats":{"cell_allocs":0,"constraint_count":0,"constraint_retries":0,"elaborate_steps":0,"infer_steps":0,"meta_created":0,"meta_solved":0,"prop_allocs":0,"prop_firings":0,"reduce_steps":0,"resolution_cycles":0,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":0,"zonk_steps":0},"memory":{"gc_ms":71,"mem_after_bytes":176960040,"mem_before_bytes":175835624,"mem_retained_bytes":1124416},"phases":{"elaborate_ms":0,"parse_ms":0,"qtt_ms":0,"reduce_ms":0,"trait_resolve_ms":0,"type_check_ms":0,"zonk_ms":0},"status":"pass","tests":49,"wall_ms":5142},{"file":"test-implicit-map-01.rkt","status":"pass","tests":11,"wall_ms":58},{"file":"test-inductive.rkt","status":"pass","tests":15,"wall_ms":142},{"file":"test-infra-cell-01.rkt","status":"pass","tests":37,"wall_ms":258},{"file":"test-infra-cell-constraint-01.rkt","status":"pass","tests":19,"wall_ms":3},{"file":"test-infra-cell-atms-01.rkt","status":"pass","tests":21,"wall_ms":169},{"file":"test-infra-cell-registration-01.rkt","status":"pass","tests":6,"wall_ms":100},{"file":"test-infra-cell-parallel-01.rkt","status":"pass","tests":6,"wall_ms":138},{"cell_metrics":{"cells":19,"propagators":0},"file":"test-hkt-impl.rkt","heartbeats":{"cell_allocs":244,"constraint_count":0,"constraint_retries":0,"elaborate_steps":54,"infer_steps":94,"meta_created":1,"meta_solved":1,"prop_allocs":0,"prop_firings":0,"reduce_steps":177,"resolution_cycles":1,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":26,"zonk_steps":92},"memory":{"gc_ms":65,"mem_after_bytes":157789824,"mem_before_bytes":157795448,"mem_retained_bytes":0},"phases":{"elaborate_ms":12,"parse_ms":0,"qtt_ms":0,"reduce_ms":366,"trait_resolve_ms":0,"type_check_ms":94,"zonk_ms":0},"status":"pass","tests":20,"wall_ms":2660},{"file":"test-integration.rkt","status":"pass","tests":33,"wall_ms":331},{"cell_metrics":{"cells":42,"propagators":3},"file":"test-generic-ops-02-02.rkt","heartbeats":{"cell_allocs":772,"constraint_count":0,"constraint_retries":0,"elaborate_steps":709,"infer_steps":578,"meta_created":70,"meta_solved":70,"prop_allocs":0,"prop_firings":0,"reduce_steps":1604,"resolution_cycles":67,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":435,"zonk_steps":1199},"memory":{"gc_ms":73,"mem_after_bytes":161930320,"mem_before_bytes":161885544,"mem_retained_bytes":44776},"phases":{"elaborate_ms":526,"parse_ms":0,"qtt_ms":393,"reduce_ms":3305,"trait_resolve_ms":0,"type_check_ms":1531,"zonk_ms":0},"status":"pass","tests":10,"wall_ms":7453},{"cell_metrics":{"cells":22,"propagators":0},"file":"test-implicit-inference.rkt","heartbeats":{"cell_allocs":267,"constraint_count":0,"constraint_retries":0,"elaborate_steps":101,"infer_steps":199,"meta_created":8,"meta_solved":8,"prop_allocs":0,"prop_firings":0,"reduce_steps":356,"resolution_cycles":8,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":57,"zonk_steps":184},"memory":{"gc_ms":49,"mem_after_bytes":138401304,"mem_before_bytes":138349640,"mem_retained_bytes":51664},"phases":{"elaborate_ms":33,"parse_ms":0,"qtt_ms":4,"reduce_ms":432,"trait_resolve_ms":0,"type_check_ms":172,"zonk_ms":0},"status":"pass","tests":12,"wall_ms":2193},{"file":"test-io-boundary-01.rkt","status":"pass","tests":11,"wall_ms":151},{"cell_metrics":{"cells":23,"propagators":0},"file":"test-generic-arith-03.rkt","heartbeats":{"cell_allocs":500,"constraint_count":0,"constraint_retries":0,"elaborate_steps":133,"infer_steps":123,"meta_created":0,"meta_solved":0,"prop_allocs":0,"prop_firings":0,"reduce_steps":84,"resolution_cycles":0,"solver_backtracks":3,"solver_unifies":15,"trait_resolve_steps":0,"unify_steps":0,"zonk_steps":139},"memory":{"gc_ms":67,"mem_after_bytes":178479784,"mem_before_bytes":177344960,"mem_retained_bytes":1134824},"phases":{"elaborate_ms":35,"parse_ms":0,"qtt_ms":0,"reduce_ms":39,"trait_resolve_ms":0,"type_check_ms":35,"zonk_ms":0},"status":"pass","tests":27,"wall_ms":9184},{"file":"test-io-bridge-01.rkt","status":"pass","tests":15,"wall_ms":156},{"cell_metrics":{"cells":14,"propagators":0},"file":"test-io-caps-01.rkt","heartbeats":{"cell_allocs":0,"constraint_count":0,"constraint_retries":0,"elaborate_steps":0,"infer_steps":0,"meta_created":0,"meta_solved":0,"prop_allocs":0,"prop_firings":0,"reduce_steps":0,"resolution_cycles":0,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":0,"zonk_steps":0},"memory":{"gc_ms":51,"mem_after_bytes":140444672,"mem_before_bytes":140252496,"mem_retained_bytes":192176},"phases":{"elaborate_ms":0,"parse_ms":0,"qtt_ms":0,"reduce_ms":0,"trait_resolve_ms":0,"type_check_ms":0,"zonk_ms":0},"status":"pass","tests":18,"wall_ms":267},{"file":"test-io-csv-01.rkt","status":"pass","tests":20,"wall_ms":110},{"cell_metrics":{"cells":18,"propagators":0},"file":"test-int.rkt","heartbeats":{"cell_allocs":325,"constraint_count":0,"constraint_retries":0,"elaborate_steps":50,"infer_steps":47,"meta_created":0,"meta_solved":0,"prop_allocs":0,"prop_firings":0,"reduce_steps":46,"resolution_cycles":0,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":3,"zonk_steps":61},"memory":{"gc_ms":59,"mem_after_bytes":162774960,"mem_before_bytes":162774496,"mem_retained_bytes":464},"phases":{"elaborate_ms":10,"parse_ms":0,"qtt_ms":0,"reduce_ms":20,"trait_resolve_ms":0,"type_check_ms":16,"zonk_ms":0},"status":"pass","tests":29,"wall_ms":2740},{"cell_metrics":{"cells":19,"propagators":0},"file":"test-io-dep-cap-01.rkt","heartbeats":{"cell_allocs":36,"constraint_count":0,"constraint_retries":0,"elaborate_steps":1,"infer_steps":0,"meta_created":0,"meta_solved":0,"prop_allocs":0,"prop_firings":0,"reduce_steps":0,"resolution_cycles":0,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":0,"zonk_steps":0},"memory":{"gc_ms":62,"mem_after_bytes":163489152,"mem_before_bytes":163214568,"mem_retained_bytes":274584},"phases":{"elaborate_ms":0,"parse_ms":0,"qtt_ms":0,"reduce_ms":0,"trait_resolve_ms":0,"type_check_ms":0,"zonk_ms":0},"status":"pass","tests":27,"wall_ms":344},{"cell_metrics":{"cells":71,"propagators":0},"file":"test-functor-ws-02.rkt","heartbeats":{"cell_allocs":3306,"constraint_count":0,"constraint_retries":0,"elaborate_steps":4230,"infer_steps":384,"meta_created":0,"meta_solved":0,"prop_allocs":0,"prop_firings":0,"reduce_steps":1707,"resolution_cycles":0,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":1110,"zonk_steps":4953},"memory":{"gc_ms":160,"mem_after_bytes":139764792,"mem_before_bytes":139894200,"mem_retained_bytes":0},"phases":{"elaborate_ms":1183,"parse_ms":0,"qtt_ms":1758,"reduce_ms":0,"trait_resolve_ms":0,"type_check_ms":7697,"zonk_ms":3},"status":"pass","tests":5,"wall_ms":12422},{"cell_metrics":{"cells":17,"propagators":0},"file":"test-introspection.rkt","heartbeats":{"cell_allocs":176,"constraint_count":0,"constraint_retries":0,"elaborate_steps":2,"infer_steps":0,"meta_created":0,"meta_solved":0,"prop_allocs":0,"prop_firings":0,"reduce_steps":0,"resolution_cycles":0,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":0,"zonk_steps":1},"memory":{"gc_ms":59,"mem_after_bytes":162812792,"mem_before_bytes":162814504,"mem_retained_bytes":0},"phases":{"elaborate_ms":0,"parse_ms":0,"qtt_ms":0,"reduce_ms":0,"trait_resolve_ms":0,"type_check_ms":0,"zonk_ms":0},"status":"pass","tests":62,"wall_ms":1870},{"cell_metrics":{"cells":22,"propagators":0},"file":"test-io-dep-session-01.rkt","heartbeats":{"cell_allocs":95,"constraint_count":0,"constraint_retries":0,"elaborate_steps":9,"infer_steps":0,"meta_created":0,"meta_solved":0,"prop_allocs":0,"prop_firings":0,"reduce_steps":0,"resolution_cycles":0,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":0,"zonk_steps":0},"memory":{"gc_ms":50,"mem_after_bytes":139943672,"mem_before_bytes":139943744,"mem_retained_bytes":0},"phases":{"elaborate_ms":1,"parse_ms":0,"qtt_ms":0,"reduce_ms":0,"trait_resolve_ms":0,"type_check_ms":0,"zonk_ms":0},"status":"pass","tests":14,"wall_ms":660},{"cell_metrics":{"cells":19,"propagators":0},"file":"test-identity-generic-ops.rkt","heartbeats":{"cell_allocs":349,"constraint_count":0,"constraint_retries":0,"elaborate_steps":61,"infer_steps":146,"meta_created":7,"meta_solved":7,"prop_allocs":0,"prop_firings":0,"reduce_steps":484,"resolution_cycles":7,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":40,"zonk_steps":193},"memory":{"gc_ms":62,"mem_after_bytes":150267392,"mem_before_bytes":150276968,"mem_retained_bytes":0},"phases":{"elaborate_ms":34,"parse_ms":0,"qtt_ms":1,"reduce_ms":1495,"trait_resolve_ms":0,"type_check_ms":159,"zonk_ms":0},"status":"pass","tests":22,"wall_ms":4811},{"cell_metrics":{"cells":46,"propagators":0},"file":"test-io-cap-pipeline-01.rkt","heartbeats":{"cell_allocs":1907,"constraint_count":0,"constraint_retries":0,"elaborate_steps":143,"infer_steps":113,"meta_created":3,"meta_solved":2,"prop_allocs":0,"prop_firings":0,"reduce_steps":72,"resolution_cycles":2,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":92,"zonk_steps":154},"memory":{"gc_ms":68,"mem_after_bytes":177655816,"mem_before_bytes":177430776,"mem_retained_bytes":225040},"phases":{"elaborate_ms":40,"parse_ms":0,"qtt_ms":29,"reduce_ms":0,"trait_resolve_ms":0,"type_check_ms":43,"zonk_ms":0},"status":"pass","tests":11,"wall_ms":2071},{"cell_metrics":{"cells":31,"propagators":0},"file":"test-io-dep-cap-02.rkt","heartbeats":{"cell_allocs":3079,"constraint_count":0,"constraint_retries":0,"elaborate_steps":78,"infer_steps":61,"meta_created":1,"meta_solved":1,"prop_allocs":0,"prop_firings":0,"reduce_steps":45,"resolution_cycles":1,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":41,"zonk_steps":93},"memory":{"gc_ms":67,"mem_after_bytes":164075192,"mem_before_bytes":163741144,"mem_retained_bytes":334048},"phases":{"elaborate_ms":25,"parse_ms":0,"qtt_ms":29,"reduce_ms":0,"trait_resolve_ms":0,"type_check_ms":27,"zonk_ms":0},"status":"pass","tests":7,"wall_ms":1229},{"cell_metrics":{"cells":25,"propagators":0},"file":"test-io-dep-session-02.rkt","heartbeats":{"cell_allocs":164,"constraint_count":0,"constraint_retries":0,"elaborate_steps":13,"infer_steps":0,"meta_created":0,"meta_solved":0,"prop_allocs":0,"prop_firings":0,"reduce_steps":0,"resolution_cycles":0,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":0,"zonk_steps":0},"memory":{"gc_ms":62,"mem_after_bytes":163047736,"mem_before_bytes":163040128,"mem_retained_bytes":7608},"phases":{"elaborate_ms":3,"parse_ms":0,"qtt_ms":0,"reduce_ms":0,"trait_resolve_ms":0,"type_check_ms":0,"zonk_ms":0},"status":"pass","tests":8,"wall_ms":1138},{"cell_metrics":{"cells":28,"propagators":0},"file":"test-io-file-02.rkt","heartbeats":{"cell_allocs":379,"constraint_count":0,"constraint_retries":0,"elaborate_steps":35,"infer_steps":0,"meta_created":0,"meta_solved":0,"prop_allocs":0,"prop_firings":0,"reduce_steps":0,"resolution_cycles":0,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":0,"zonk_steps":0},"memory":{"gc_ms":58,"mem_after_bytes":150448184,"mem_before_bytes":150440560,"mem_retained_bytes":7624},"phases":{"elaborate_ms":9,"parse_ms":0,"qtt_ms":0,"reduce_ms":0,"trait_resolve_ms":0,"type_check_ms":0,"zonk_ms":0},"status":"pass","tests":8,"wall_ms":1065},{"file":"test-io-opaque-01.rkt","status":"pass","tests":13,"wall_ms":83},{"cell_metrics":{"cells":18,"propagators":0},"file":"test-io-file-01.rkt","heartbeats":{"cell_allocs":187,"constraint_count":0,"constraint_retries":0,"elaborate_steps":26,"infer_steps":64,"meta_created":11,"meta_solved":0,"prop_allocs":0,"prop_firings":0,"reduce_steps":167,"resolution_cycles":0,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":1,"zonk_steps":74},"memory":{"gc_ms":53,"mem_after_bytes":140249880,"mem_before_bytes":140232216,"mem_retained_bytes":17664},"phases":{"elaborate_ms":23,"parse_ms":0,"qtt_ms":0,"reduce_ms":43,"trait_resolve_ms":0,"type_check_ms":49,"zonk_ms":0},"status":"pass","tests":12,"wall_ms":1602},{"cell_metrics":{"cells":17,"propagators":0},"file":"test-io-fs-01.rkt","heartbeats":{"cell_allocs":112,"constraint_count":0,"constraint_retries":0,"elaborate_steps":14,"infer_steps":21,"meta_created":0,"meta_solved":0,"prop_allocs":0,"prop_firings":0,"reduce_steps":63,"resolution_cycles":0,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":0,"zonk_steps":28},"memory":{"gc_ms":63,"mem_after_bytes":163702784,"mem_before_bytes":163701264,"mem_retained_bytes":1520},"phases":{"elaborate_ms":4,"parse_ms":0,"qtt_ms":0,"reduce_ms":20,"trait_resolve_ms":0,"type_check_ms":9,"zonk_ms":0},"status":"pass","tests":7,"wall_ms":1173},{"file":"test-io-session-02.rkt","status":"pass","tests":10,"wall_ms":94},{"cell_metrics":{"cells":14,"propagators":0},"file":"test-io-session-01.rkt","heartbeats":{"cell_allocs":0,"constraint_count":0,"constraint_retries":0,"elaborate_steps":0,"infer_steps":0,"meta_created":0,"meta_solved":0,"prop_allocs":0,"prop_firings":0,"reduce_steps":0,"resolution_cycles":0,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":0,"zonk_steps":0},"memory":{"gc_ms":50,"mem_after_bytes":140483504,"mem_before_bytes":140575560,"mem_retained_bytes":0},"phases":{"elaborate_ms":0,"parse_ms":0,"qtt_ms":0,"reduce_ms":0,"trait_resolve_ms":0,"type_check_ms":0,"zonk_ms":0},"status":"pass","tests":11,"wall_ms":249},{"cell_metrics":{"cells":27,"propagators":0},"file":"test-implicit-map-02.rkt","heartbeats":{"cell_allocs":509,"constraint_count":0,"constraint_retries":0,"elaborate_steps":110,"infer_steps":102,"meta_created":21,"meta_solved":21,"prop_allocs":0,"prop_firings":0,"reduce_steps":232,"resolution_cycles":21,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":33,"zonk_steps":185},"memory":{"gc_ms":66,"mem_after_bytes":162254760,"mem_before_bytes":162253912,"mem_retained_bytes":848},"phases":{"elaborate_ms":33,"parse_ms":0,"qtt_ms":15,"reduce_ms":77,"trait_resolve_ms":0,"type_check_ms":56,"zonk_ms":0},"status":"pass","tests":10,"wall_ms":6471},{"cell_metrics":{"cells":14,"propagators":0},"file":"test-interval-domain-01.rkt","heartbeats":{"cell_allocs":0,"constraint_count":0,"constraint_retries":0,"elaborate_steps":0,"infer_steps":0,"meta_created":0,"meta_solved":0,"prop_allocs":0,"prop_firings":0,"reduce_steps":0,"resolution_cycles":0,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":0,"zonk_steps":0},"memory":{"gc_ms":72,"mem_after_bytes":177075824,"mem_before_bytes":176848096,"mem_retained_bytes":227728},"phases":{"elaborate_ms":0,"parse_ms":0,"qtt_ms":0,"reduce_ms":0,"trait_resolve_ms":0,"type_check_ms":0,"zonk_ms":0},"status":"pass","tests":43,"wall_ms":5334},{"cell_metrics":{"cells":19,"propagators":0},"file":"test-int-patterns-01.rkt","heartbeats":{"cell_allocs":347,"constraint_count":0,"constraint_retries":0,"elaborate_steps":235,"infer_steps":232,"meta_created":9,"meta_solved":9,"prop_allocs":0,"prop_firings":0,"reduce_steps":2168,"resolution_cycles":9,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":160,"zonk_steps":274},"memory":{"gc_ms":66,"mem_after_bytes":177107928,"mem_before_bytes":177053960,"mem_retained_bytes":53968},"phases":{"elaborate_ms":67,"parse_ms":0,"qtt_ms":138,"reduce_ms":4441,"trait_resolve_ms":0,"type_check_ms":151,"zonk_ms":0},"status":"pass","tests":9,"wall_ms":6345},{"cell_metrics":{"cells":24,"propagators":0},"file":"test-io-session-03.rkt","heartbeats":{"cell_allocs":218,"constraint_count":0,"constraint_retries":0,"elaborate_steps":21,"infer_steps":0,"meta_created":0,"meta_solved":0,"prop_allocs":0,"prop_firings":0,"reduce_steps":0,"resolution_cycles":0,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":0,"zonk_steps":0},"memory":{"gc_ms":63,"mem_after_bytes":164253608,"mem_before_bytes":164244552,"mem_retained_bytes":9056},"phases":{"elaborate_ms":7,"parse_ms":0,"qtt_ms":0,"reduce_ms":0,"trait_resolve_ms":0,"type_check_ms":0,"zonk_ms":0},"status":"pass","tests":6,"wall_ms":941},{"cell_metrics":{"cells":28,"propagators":0},"file":"test-io-main-01.rkt","heartbeats":{"cell_allocs":1726,"constraint_count":0,"constraint_retries":0,"elaborate_steps":97,"infer_steps":109,"meta_created":12,"meta_solved":3,"prop_allocs":0,"prop_firings":0,"reduce_steps":81,"resolution_cycles":3,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":61,"zonk_steps":129},"memory":{"gc_ms":64,"mem_after_bytes":164944664,"mem_before_bytes":163666568,"mem_retained_bytes":1278096},"phases":{"elaborate_ms":43,"parse_ms":0,"qtt_ms":44,"reduce_ms":3,"trait_resolve_ms":0,"type_check_ms":68,"zonk_ms":0},"status":"pass","tests":11,"wall_ms":2385},{"cell_metrics":{"cells":14,"propagators":0},"file":"test-kind-inference.rkt","heartbeats":{"cell_allocs":48,"constraint_count":0,"constraint_retries":0,"elaborate_steps":6,"infer_steps":3,"meta_created":0,"meta_solved":0,"prop_allocs":0,"prop_firings":0,"reduce_steps":6,"resolution_cycles":0,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":0,"zonk_steps":6},"memory":{"gc_ms":60,"mem_after_bytes":162312464,"mem_before_bytes":162313440,"mem_retained_bytes":0},"phases":{"elaborate_ms":2,"parse_ms":0,"qtt_ms":0,"reduce_ms":3,"trait_resolve_ms":0,"type_check_ms":0,"zonk_ms":0},"status":"pass","tests":22,"wall_ms":926},{"cell_metrics":{"cells":32,"propagators":0},"file":"test-io-fio-01.rkt","heartbeats":{"cell_allocs":432,"constraint_count":0,"constraint_retries":0,"elaborate_steps":116,"infer_steps":173,"meta_created":5,"meta_solved":5,"prop_allocs":0,"prop_firings":0,"reduce_steps":543,"resolution_cycles":5,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":62,"zonk_steps":184},"memory":{"gc_ms":71,"mem_after_bytes":177793848,"mem_before_bytes":177770696,"mem_retained_bytes":23152},"phases":{"elaborate_ms":56,"parse_ms":0,"qtt_ms":28,"reduce_ms":405,"trait_resolve_ms":0,"type_check_ms":152,"zonk_ms":0},"status":"pass","tests":15,"wall_ms":3083},{"cell_metrics":{"cells":17,"propagators":0},"file":"test-io-path-01.rkt","heartbeats":{"cell_allocs":224,"constraint_count":0,"constraint_retries":0,"elaborate_steps":38,"infer_steps":71,"meta_created":0,"meta_solved":0,"prop_allocs":0,"prop_firings":0,"reduce_steps":170,"resolution_cycles":0,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":9,"zonk_steps":56},"memory":{"gc_ms":58,"mem_after_bytes":151146048,"mem_before_bytes":151148680,"mem_retained_bytes":0},"phases":{"elaborate_ms":12,"parse_ms":0,"qtt_ms":0,"reduce_ms":108,"trait_resolve_ms":0,"type_check_ms":37,"zonk_ms":0},"status":"pass","tests":14,"wall_ms":2289},{"cell_metrics":{"cells":14,"propagators":0},"file":"test-kind-inference-where.rkt","heartbeats":{"cell_allocs":229,"constraint_count":0,"constraint_retries":0,"elaborate_steps":180,"infer_steps":137,"meta_created":7,"meta_solved":7,"prop_allocs":0,"prop_firings":0,"reduce_steps":490,"resolution_cycles":7,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":110,"zonk_steps":254},"memory":{"gc_ms":51,"mem_after_bytes":140834944,"mem_before_bytes":140819968,"mem_retained_bytes":14976},"phases":{"elaborate_ms":69,"parse_ms":0,"qtt_ms":64,"reduce_ms":358,"trait_resolve_ms":0,"type_check_ms":185,"zonk_ms":0},"status":"pass","tests":15,"wall_ms":2593},{"cell_metrics":{"cells":17,"propagators":0},"file":"test-hashable-02.rkt","heartbeats":{"cell_allocs":213,"constraint_count":0,"constraint_retries":0,"elaborate_steps":47,"infer_steps":94,"meta_created":5,"meta_solved":5,"prop_allocs":0,"prop_firings":0,"reduce_steps":1977,"resolution_cycles":5,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":31,"zonk_steps":126},"memory":{"gc_ms":53,"mem_after_bytes":143419216,"mem_before_bytes":143415568,"mem_retained_bytes":3648},"phases":{"elaborate_ms":28,"parse_ms":0,"qtt_ms":0,"reduce_ms":10550,"trait_resolve_ms":0,"type_check_ms":107,"zonk_ms":0},"status":"pass","tests":7,"wall_ms":11670},{"cell_metrics":{"cells":20,"propagators":0},"file":"test-list-literals.rkt","heartbeats":{"cell_allocs":122,"constraint_count":0,"constraint_retries":0,"elaborate_steps":43,"infer_steps":141,"meta_created":21,"meta_solved":21,"prop_allocs":0,"prop_firings":0,"reduce_steps":211,"resolution_cycles":21,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":55,"zonk_steps":133},"memory":{"gc_ms":64,"mem_after_bytes":151643008,"mem_before_bytes":151625448,"mem_retained_bytes":17560},"phases":{"elaborate_ms":55,"parse_ms":0,"qtt_ms":29,"reduce_ms":243,"trait_resolve_ms":0,"type_check_ms":177,"zonk_ms":0},"status":"pass","tests":32,"wall_ms":1463},{"cell_metrics":{"cells":24,"propagators":0},"file":"test-list-extended-01-01.rkt","heartbeats":{"cell_allocs":182,"constraint_count":0,"constraint_retries":0,"elaborate_steps":63,"infer_steps":247,"meta_created":38,"meta_solved":38,"prop_allocs":0,"prop_firings":0,"reduce_steps":841,"resolution_cycles":38,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":98,"zonk_steps":326},"memory":{"gc_ms":87,"mem_after_bytes":164441280,"mem_before_bytes":164464296,"mem_retained_bytes":0},"phases":{"elaborate_ms":119,"parse_ms":0,"qtt_ms":0,"reduce_ms":1717,"trait_resolve_ms":0,"type_check_ms":418,"zonk_ms":0},"status":"pass","tests":9,"wall_ms":3748},{"cell_metrics":{"cells":19,"propagators":0},"file":"test-lseq-01.rkt","heartbeats":{"cell_allocs":201,"constraint_count":0,"constraint_retries":0,"elaborate_steps":81,"infer_steps":173,"meta_created":0,"meta_solved":0,"prop_allocs":0,"prop_firings":0,"reduce_steps":291,"resolution_cycles":0,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":60,"zonk_steps":149},"memory":{"gc_ms":54,"mem_after_bytes":141014208,"mem_before_bytes":140970496,"mem_retained_bytes":43712},"phases":{"elaborate_ms":23,"parse_ms":0,"qtt_ms":30,"reduce_ms":385,"trait_resolve_ms":0,"type_check_ms":197,"zonk_ms":0},"status":"pass","tests":11,"wall_ms":2253},{"cell_metrics":{"cells":28,"propagators":0},"file":"test-let-arrow-syntax.rkt","heartbeats":{"cell_allocs":1235,"constraint_count":0,"constraint_retries":0,"elaborate_steps":398,"infer_steps":257,"meta_created":0,"meta_solved":0,"prop_allocs":0,"prop_firings":0,"reduce_steps":238,"resolution_cycles":0,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":147,"zonk_steps":363},"memory":{"gc_ms":77,"mem_after_bytes":177494728,"mem_before_bytes":177493328,"mem_retained_bytes":1400},"phases":{"elaborate_ms":129,"parse_ms":0,"qtt_ms":94,"reduce_ms":153,"trait_resolve_ms":0,"type_check_ms":213,"zonk_ms":1},"status":"pass","tests":34,"wall_ms":7597},{"cell_metrics":{"cells":19,"propagators":0},"file":"test-lseq-traits.rkt","heartbeats":{"cell_allocs":185,"constraint_count":0,"constraint_retries":0,"elaborate_steps":30,"infer_steps":73,"meta_created":6,"meta_solved":4,"prop_allocs":0,"prop_firings":0,"reduce_steps":63,"resolution_cycles":4,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":47,"zonk_steps":122},"memory":{"gc_ms":65,"mem_after_bytes":164610424,"mem_before_bytes":164593304,"mem_retained_bytes":17120},"phases":{"elaborate_ms":128,"parse_ms":0,"qtt_ms":28,"reduce_ms":0,"trait_resolve_ms":0,"type_check_ms":503,"zonk_ms":0},"status":"pass","tests":11,"wall_ms":3944},{"cell_metrics":{"cells":25,"propagators":0},"file":"test-map-bridge.rkt","heartbeats":{"cell_allocs":594,"constraint_count":0,"constraint_retries":0,"elaborate_steps":252,"infer_steps":304,"meta_created":6,"meta_solved":6,"prop_allocs":0,"prop_firings":0,"reduce_steps":221,"resolution_cycles":6,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":104,"zonk_steps":172},"memory":{"gc_ms":63,"mem_after_bytes":141240616,"mem_before_bytes":141256408,"mem_retained_bytes":0},"phases":{"elaborate_ms":133,"parse_ms":0,"qtt_ms":20,"reduce_ms":58,"trait_resolve_ms":0,"type_check_ms":614,"zonk_ms":0},"status":"pass","tests":17,"wall_ms":4638},{"cell_metrics":{"cells":19,"propagators":0},"file":"test-map-entry.rkt","heartbeats":{"cell_allocs":172,"constraint_count":0,"constraint_retries":0,"elaborate_steps":66,"infer_steps":158,"meta_created":12,"meta_solved":12,"prop_allocs":0,"prop_firings":0,"reduce_steps":185,"resolution_cycles":12,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":54,"zonk_steps":84},"memory":{"gc_ms":71,"mem_after_bytes":177679296,"mem_before_bytes":177632336,"mem_retained_bytes":46960},"phases":{"elaborate_ms":58,"parse_ms":0,"qtt_ms":0,"reduce_ms":65,"trait_resolve_ms":0,"type_check_ms":286,"zonk_ms":0},"status":"pass","tests":10,"wall_ms":2577},{"cell_metrics":{"cells":25,"propagators":0},"file":"test-list-extended-02-01.rkt","heartbeats":{"cell_allocs":255,"constraint_count":0,"constraint_retries":0,"elaborate_steps":136,"infer_steps":544,"meta_created":79,"meta_solved":79,"prop_allocs":0,"prop_firings":0,"reduce_steps":1889,"resolution_cycles":79,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":191,"zonk_steps":634},"memory":{"gc_ms":87,"mem_after_bytes":162473288,"mem_before_bytes":162467496,"mem_retained_bytes":5792},"phases":{"elaborate_ms":441,"parse_ms":0,"qtt_ms":0,"reduce_ms":5564,"trait_resolve_ms":0,"type_check_ms":1203,"zonk_ms":0},"status":"pass","tests":11,"wall_ms":9729},{"cell_metrics":{"cells":21,"propagators":0},"file":"test-lseq-literal.rkt","heartbeats":{"cell_allocs":602,"constraint_count":0,"constraint_retries":0,"elaborate_steps":290,"infer_steps":510,"meta_created":47,"meta_solved":47,"prop_allocs":0,"prop_firings":0,"reduce_steps":933,"resolution_cycles":47,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":297,"zonk_steps":515},"memory":{"gc_ms":64,"mem_after_bytes":151903632,"mem_before_bytes":151924832,"mem_retained_bytes":0},"phases":{"elaborate_ms":294,"parse_ms":0,"qtt_ms":486,"reduce_ms":2897,"trait_resolve_ms":0,"type_check_ms":867,"zonk_ms":0},"status":"pass","tests":25,"wall_ms":8184},{"cell_metrics":{"cells":17,"propagators":0},"file":"test-map-set-traits-01.rkt","heartbeats":{"cell_allocs":80,"constraint_count":0,"constraint_retries":0,"elaborate_steps":8,"infer_steps":8,"meta_created":0,"meta_solved":0,"prop_allocs":0,"prop_firings":0,"reduce_steps":3,"resolution_cycles":0,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":0,"zonk_steps":121},"memory":{"gc_ms":53,"mem_after_bytes":141337256,"mem_before_bytes":141339088,"mem_retained_bytes":0},"phases":{"elaborate_ms":2,"parse_ms":0,"qtt_ms":0,"reduce_ms":0,"trait_resolve_ms":0,"type_check_ms":17,"zonk_ms":0},"status":"pass","tests":12,"wall_ms":1970},{"cell_metrics":{"cells":21,"propagators":0},"file":"test-map-ops-eval.rkt","heartbeats":{"cell_allocs":741,"constraint_count":0,"constraint_retries":0,"elaborate_steps":317,"infer_steps":298,"meta_created":12,"meta_solved":12,"prop_allocs":0,"prop_firings":0,"reduce_steps":218,"resolution_cycles":12,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":47,"zonk_steps":285},"memory":{"gc_ms":68,"mem_after_bytes":165207808,"mem_before_bytes":165213384,"mem_retained_bytes":0},"phases":{"elaborate_ms":212,"parse_ms":0,"qtt_ms":30,"reduce_ms":10,"trait_resolve_ms":0,"type_check_ms":277,"zonk_ms":0},"status":"pass","tests":14,"wall_ms":3269},{"file":"test-metavar.rkt","status":"pass","tests":30,"wall_ms":392},{"cell_metrics":{"cells":18,"propagators":0},"file":"test-lattice.rkt","heartbeats":{"cell_allocs":739,"constraint_count":0,"constraint_retries":0,"elaborate_steps":219,"infer_steps":459,"meta_created":47,"meta_solved":47,"prop_allocs":0,"prop_firings":0,"reduce_steps":1355,"resolution_cycles":47,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":255,"zonk_steps":896},"memory":{"gc_ms":72,"mem_after_bytes":177453256,"mem_before_bytes":177471208,"mem_retained_bytes":0},"phases":{"elaborate_ms":572,"parse_ms":0,"qtt_ms":528,"reduce_ms":2274,"trait_resolve_ms":0,"type_check_ms":2171,"zonk_ms":0},"status":"pass","tests":28,"wall_ms":11815},{"cell_metrics":{"cells":21,"propagators":0},"file":"test-io-csv-02.rkt","heartbeats":{"cell_allocs":154,"constraint_count":0,"constraint_retries":0,"elaborate_steps":32,"infer_steps":55,"meta_created":6,"meta_solved":0,"prop_allocs":0,"prop_firings":0,"reduce_steps":2985,"resolution_cycles":0,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":10,"zonk_steps":66},"memory":{"gc_ms":194,"mem_after_bytes":141126032,"mem_before_bytes":141088600,"mem_retained_bytes":37432},"phases":{"elaborate_ms":25,"parse_ms":0,"qtt_ms":15,"reduce_ms":15091,"trait_resolve_ms":0,"type_check_ms":62,"zonk_ms":0},"status":"pass","tests":8,"wall_ms":16570},{"cell_metrics":{"cells":25,"propagators":0},"file":"test-lseq-02.rkt","heartbeats":{"cell_allocs":945,"constraint_count":0,"constraint_retries":0,"elaborate_steps":327,"infer_steps":657,"meta_created":0,"meta_solved":0,"prop_allocs":0,"prop_firings":0,"reduce_steps":1245,"resolution_cycles":0,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":275,"zonk_steps":635},"memory":{"gc_ms":63,"mem_after_bytes":143660936,"mem_before_bytes":143667424,"mem_retained_bytes":0},"phases":{"elaborate_ms":128,"parse_ms":0,"qtt_ms":357,"reduce_ms":5704,"trait_resolve_ms":0,"type_check_ms":881,"zonk_ms":0},"status":"pass","tests":17,"wall_ms":10443},{"file":"test-module-network-01.rkt","status":"pass","tests":24,"wall_ms":254},{"cell_metrics":{"cells":21,"propagators":0},"file":"test-map-set-traits-02.rkt","heartbeats":{"cell_allocs":377,"constraint_count":0,"constraint_retries":0,"elaborate_steps":77,"infer_steps":66,"meta_created":0,"meta_solved":0,"prop_allocs":0,"prop_firings":0,"reduce_steps":30,"resolution_cycles":0,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":17,"zonk_steps":177},"memory":{"gc_ms":72,"mem_after_bytes":177861512,"mem_before_bytes":177862016,"mem_retained_bytes":0},"phases":{"elaborate_ms":22,"parse_ms":0,"qtt_ms":3,"reduce_ms":0,"trait_resolve_ms":0,"type_check_ms":56,"zonk_ms":0},"status":"pass","tests":15,"wall_ms":3086},{"file":"test-mult-lattice.rkt","status":"pass","tests":9,"wall_ms":107},{"cell_metrics":{"cells":22,"propagators":0},"file":"test-mixed-map.rkt","heartbeats":{"cell_allocs":469,"constraint_count":0,"constraint_retries":0,"elaborate_steps":143,"infer_steps":282,"meta_created":38,"meta_solved":50,"prop_allocs":0,"prop_firings":0,"reduce_steps":194,"resolution_cycles":50,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":108,"zonk_steps":306},"memory":{"gc_ms":55,"mem_after_bytes":142546952,"mem_before_bytes":142550024,"mem_retained_bytes":0},"phases":{"elaborate_ms":55,"parse_ms":0,"qtt_ms":51,"reduce_ms":20,"trait_resolve_ms":0,"type_check_ms":195,"zonk_ms":0},"status":"pass","tests":21,"wall_ms":2403},{"cell_metrics":{"cells":32,"propagators":0},"file":"test-method-resolution.rkt","heartbeats":{"cell_allocs":386,"constraint_count":0,"constraint_retries":0,"elaborate_steps":203,"infer_steps":188,"meta_created":12,"meta_solved":12,"prop_allocs":0,"prop_firings":0,"reduce_steps":596,"resolution_cycles":12,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":124,"zonk_steps":294},"memory":{"gc_ms":62,"mem_after_bytes":165706192,"mem_before_bytes":165679456,"mem_retained_bytes":26736},"phases":{"elaborate_ms":138,"parse_ms":0,"qtt_ms":155,"reduce_ms":651,"trait_resolve_ms":0,"type_check_ms":300,"zonk_ms":0},"status":"pass","tests":23,"wall_ms":2953},{"cell_metrics":{"cells":19,"propagators":0},"file":"test-map.rkt","heartbeats":{"cell_allocs":434,"constraint_count":0,"constraint_retries":0,"elaborate_steps":150,"infer_steps":108,"meta_created":6,"meta_solved":4,"prop_allocs":0,"prop_firings":0,"reduce_steps":196,"resolution_cycles":4,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":16,"zonk_steps":162},"memory":{"gc_ms":61,"mem_after_bytes":163112072,"mem_before_bytes":163115176,"mem_retained_bytes":0},"phases":{"elaborate_ms":57,"parse_ms":0,"qtt_ms":9,"reduce_ms":83,"trait_resolve_ms":0,"type_check_ms":62,"zonk_ms":0},"status":"pass","tests":37,"wall_ms":3869},{"file":"test-namespace.rkt","status":"pass","tests":20,"wall_ms":137},{"cell_metrics":{"cells":18,"propagators":0},"file":"test-mult-inference.rkt","heartbeats":{"cell_allocs":216,"constraint_count":0,"constraint_retries":0,"elaborate_steps":51,"infer_steps":51,"meta_created":1,"meta_solved":1,"prop_allocs":0,"prop_firings":0,"reduce_steps":89,"resolution_cycles":1,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":21,"zonk_steps":70},"memory":{"gc_ms":52,"mem_after_bytes":144505536,"mem_before_bytes":144504200,"mem_retained_bytes":1336},"phases":{"elaborate_ms":15,"parse_ms":0,"qtt_ms":8,"reduce_ms":37,"trait_resolve_ms":0,"type_check_ms":30,"zonk_ms":0},"status":"pass","tests":23,"wall_ms":1523},{"cell_metrics":{"cells":25,"propagators":0},"file":"test-list-extended-02-02.rkt","heartbeats":{"cell_allocs":297,"constraint_count":0,"constraint_retries":0,"elaborate_steps":145,"infer_steps":497,"meta_created":71,"meta_solved":71,"prop_allocs":0,"prop_firings":0,"reduce_steps":1590,"resolution_cycles":71,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":179,"zonk_steps":581},"memory":{"gc_ms":213,"mem_after_bytes":178000200,"mem_before_bytes":178009016,"mem_retained_bytes":0},"phases":{"elaborate_ms":334,"parse_ms":0,"qtt_ms":0,"reduce_ms":8910,"trait_resolve_ms":0,"type_check_ms":1024,"zonk_ms":0},"status":"pass","tests":14,"wall_ms":13786},{"file":"test-narrowing-01.rkt","status":"pass","tests":31,"wall_ms":183},{"cell_metrics":{"cells":21,"propagators":0},"file":"test-mult-propagator.rkt","heartbeats":{"cell_allocs":170,"constraint_count":0,"constraint_retries":0,"elaborate_steps":30,"infer_steps":31,"meta_created":0,"meta_solved":0,"prop_allocs":0,"prop_firings":0,"reduce_steps":183,"resolution_cycles":0,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":3,"zonk_steps":40},"memory":{"gc_ms":68,"mem_after_bytes":178562288,"mem_before_bytes":178503880,"mem_retained_bytes":58408},"phases":{"elaborate_ms":12,"parse_ms":0,"qtt_ms":1,"reduce_ms":180,"trait_resolve_ms":0,"type_check_ms":22,"zonk_ms":0},"status":"pass","tests":14,"wall_ms":1536},{"cell_metrics":{"cells":31,"propagators":0},"file":"test-match-builtins.rkt","heartbeats":{"cell_allocs":736,"constraint_count":0,"constraint_retries":0,"elaborate_steps":286,"infer_steps":255,"meta_created":0,"meta_solved":0,"prop_allocs":0,"prop_firings":0,"reduce_steps":282,"resolution_cycles":0,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":55,"zonk_steps":304},"memory":{"gc_ms":58,"mem_after_bytes":152196104,"mem_before_bytes":152199024,"mem_retained_bytes":0},"phases":{"elaborate_ms":108,"parse_ms":0,"qtt_ms":0,"reduce_ms":177,"trait_resolve_ms":0,"type_check_ms":159,"zonk_ms":0},"status":"pass","tests":24,"wall_ms":4341},{"cell_metrics":{"cells":23,"propagators":0},"file":"test-multi-body-defn.rkt","heartbeats":{"cell_allocs":752,"constraint_count":0,"constraint_retries":0,"elaborate_steps":190,"infer_steps":103,"meta_created":0,"meta_solved":0,"prop_allocs":0,"prop_firings":0,"reduce_steps":131,"resolution_cycles":0,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":97,"zonk_steps":193},"memory":{"gc_ms":51,"mem_after_bytes":143110080,"mem_before_bytes":143055448,"mem_retained_bytes":54632},"phases":{"elaborate_ms":53,"parse_ms":0,"qtt_ms":58,"reduce_ms":42,"trait_resolve_ms":0,"type_check_ms":77,"zonk_ms":0},"status":"pass","tests":15,"wall_ms":1629},{"cell_metrics":{"cells":34,"propagators":0},"file":"test-list-extended-01-02.rkt","heartbeats":{"cell_allocs":485,"constraint_count":0,"constraint_retries":0,"elaborate_steps":202,"infer_steps":675,"meta_created":97,"meta_solved":97,"prop_allocs":0,"prop_firings":0,"reduce_steps":2427,"resolution_cycles":97,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":260,"zonk_steps":817},"memory":{"gc_ms":105,"mem_after_bytes":163710600,"mem_before_bytes":163724112,"mem_retained_bytes":0},"phases":{"elaborate_ms":385,"parse_ms":0,"qtt_ms":6,"reduce_ms":10112,"trait_resolve_ms":0,"type_check_ms":1384,"zonk_ms":0},"status":"pass","tests":15,"wall_ms":15222},{"cell_metrics":{"cells":17,"propagators":0},"file":"test-negative-literals.rkt","heartbeats":{"cell_allocs":112,"constraint_count":0,"constraint_retries":0,"elaborate_steps":9,"infer_steps":9,"meta_created":0,"meta_solved":0,"prop_allocs":0,"prop_firings":0,"reduce_steps":14,"resolution_cycles":0,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":0,"zonk_steps":16},"memory":{"gc_ms":55,"mem_after_bytes":152507800,"mem_before_bytes":152511992,"mem_retained_bytes":0},"phases":{"elaborate_ms":1,"parse_ms":0,"qtt_ms":0,"reduce_ms":8,"trait_resolve_ms":0,"type_check_ms":1,"zonk_ms":0},"status":"pass","tests":25,"wall_ms":1180},{"cell_metrics":{"cells":19,"propagators":0},"file":"test-new-lattice-cell.rkt","heartbeats":{"cell_allocs":1020,"constraint_count":0,"constraint_retries":0,"elaborate_steps":543,"infer_steps":442,"meta_created":0,"meta_solved":0,"prop_allocs":0,"prop_firings":0,"reduce_steps":771,"resolution_cycles":0,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":301,"zonk_steps":648},"memory":{"gc_ms":56,"mem_after_bytes":143252608,"mem_before_bytes":143256696,"mem_retained_bytes":0},"phases":{"elaborate_ms":182,"parse_ms":0,"qtt_ms":477,"reduce_ms":427,"trait_resolve_ms":0,"type_check_ms":666,"zonk_ms":0},"status":"pass","tests":10,"wall_ms":3394},{"file":"test-numeric-join.rkt","status":"pass","tests":25,"wall_ms":120},{"cell_metrics":{"cells":29,"propagators":0},"file":"test-nil-type.rkt","heartbeats":{"cell_allocs":576,"constraint_count":0,"constraint_retries":0,"elaborate_steps":82,"infer_steps":66,"meta_created":8,"meta_solved":8,"prop_allocs":0,"prop_firings":0,"reduce_steps":106,"resolution_cycles":8,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":19,"zonk_steps":105},"memory":{"gc_ms":60,"mem_after_bytes":164585080,"mem_before_bytes":164584472,"mem_retained_bytes":608},"phases":{"elaborate_ms":29,"parse_ms":0,"qtt_ms":14,"reduce_ms":20,"trait_resolve_ms":0,"type_check_ms":27,"zonk_ms":0},"status":"pass","tests":45,"wall_ms":3174},{"cell_metrics":{"cells":17,"propagators":0},"file":"test-numeric-coercion.rkt","heartbeats":{"cell_allocs":368,"constraint_count":0,"constraint_retries":0,"elaborate_steps":73,"infer_steps":73,"meta_created":0,"meta_solved":0,"prop_allocs":0,"prop_firings":0,"reduce_steps":90,"resolution_cycles":0,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":0,"zonk_steps":87},"memory":{"gc_ms":61,"mem_after_bytes":152735376,"mem_before_bytes":152719312,"mem_retained_bytes":16064},"phases":{"elaborate_ms":17,"parse_ms":0,"qtt_ms":0,"reduce_ms":41,"trait_resolve_ms":0,"type_check_ms":21,"zonk_ms":0},"status":"pass","tests":23,"wall_ms":3074},{"cell_metrics":{"cells":19,"propagators":0},"file":"test-mixfix-01.rkt","heartbeats":{"cell_allocs":177,"constraint_count":0,"constraint_retries":0,"elaborate_steps":42,"infer_steps":42,"meta_created":0,"meta_solved":0,"prop_allocs":0,"prop_firings":0,"reduce_steps":50,"resolution_cycles":0,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":2,"zonk_steps":52},"memory":{"gc_ms":83,"mem_after_bytes":195782280,"mem_before_bytes":195783496,"mem_retained_bytes":0},"phases":{"elaborate_ms":9,"parse_ms":0,"qtt_ms":2,"reduce_ms":18,"trait_resolve_ms":0,"type_check_ms":11,"zonk_ms":0},"status":"pass","tests":36,"wall_ms":7733},{"file":"test-observatory-01.rkt","status":"pass","tests":18,"wall_ms":225},{"file":"test-observatory-02.rkt","status":"pass","tests":10,"wall_ms":237},{"file":"test-parse-integration.rkt","status":"pass","tests":7,"wall_ms":108},{"file":"test-parse-bridges.rkt","status":"pass","tests":23,"wall_ms":133},{"file":"test-parse-lattice.rkt","status":"pass","tests":27,"wall_ms":169},{"cell_metrics":{"cells":18,"propagators":0},"file":"test-mixfix-02.rkt","heartbeats":{"cell_allocs":160,"constraint_count":0,"constraint_retries":0,"elaborate_steps":81,"infer_steps":179,"meta_created":16,"meta_solved":16,"prop_allocs":0,"prop_firings":0,"reduce_steps":175,"resolution_cycles":16,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":51,"zonk_steps":189},"memory":{"gc_ms":58,"mem_after_bytes":159435016,"mem_before_bytes":159444744,"mem_retained_bytes":0},"phases":{"elaborate_ms":57,"parse_ms":0,"qtt_ms":0,"reduce_ms":62,"trait_resolve_ms":0,"type_check_ms":165,"zonk_ms":1},"status":"pass","tests":29,"wall_ms":7356},{"cell_metrics":{"cells":32,"propagators":0},"file":"test-native-collection-ops.rkt","heartbeats":{"cell_allocs":848,"constraint_count":0,"constraint_retries":0,"elaborate_steps":372,"infer_steps":394,"meta_created":16,"meta_solved":16,"prop_allocs":0,"prop_firings":0,"reduce_steps":569,"resolution_cycles":16,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":109,"zonk_steps":406},"memory":{"gc_ms":70,"mem_after_bytes":178915648,"mem_before_bytes":178926104,"mem_retained_bytes":0},"phases":{"elaborate_ms":102,"parse_ms":0,"qtt_ms":13,"reduce_ms":247,"trait_resolve_ms":0,"type_check_ms":210,"zonk_ms":0},"status":"pass","tests":27,"wall_ms":5209},{"file":"test-parser-relational.rkt","status":"pass","tests":29,"wall_ms":320},{"file":"test-parser.rkt","status":"pass","tests":82,"wall_ms":680},{"cell_metrics":{"cells":17,"propagators":0},"file":"test-narrow-syntax-01.rkt","heartbeats":{"cell_allocs":80,"constraint_count":0,"constraint_retries":0,"elaborate_steps":24,"infer_steps":22,"meta_created":0,"meta_solved":0,"prop_allocs":0,"prop_firings":0,"reduce_steps":60,"resolution_cycles":0,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":0,"zonk_steps":27},"memory":{"gc_ms":70,"mem_after_bytes":181430256,"mem_before_bytes":181433456,"mem_retained_bytes":0},"phases":{"elaborate_ms":8,"parse_ms":0,"qtt_ms":0,"reduce_ms":36,"trait_resolve_ms":0,"type_check_ms":5,"zonk_ms":0},"status":"pass","tests":16,"wall_ms":6884},{"file":"test-perf-counters.rkt","status":"pass","tests":6,"wall_ms":183},{"file":"test-phase-timing.rkt","status":"pass","tests":7,"wall_ms":556},{"cell_metrics":{"cells":19,"propagators":0},"file":"test-narrowing-search-02.rkt","heartbeats":{"cell_allocs":139,"constraint_count":0,"constraint_retries":0,"elaborate_steps":43,"infer_steps":42,"meta_created":1,"meta_solved":1,"prop_allocs":0,"prop_firings":0,"reduce_steps":83,"resolution_cycles":1,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":6,"zonk_steps":52},"memory":{"gc_ms":62,"mem_after_bytes":163075888,"mem_before_bytes":163030104,"mem_retained_bytes":45784},"phases":{"elaborate_ms":11,"parse_ms":0,"qtt_ms":4,"reduce_ms":38,"trait_resolve_ms":0,"type_check_ms":15,"zonk_ms":0},"status":"pass","tests":7,"wall_ms":7302},{"cell_metrics":{"cells":26,"propagators":3},"file":"test-numeric-traits-01.rkt","heartbeats":{"cell_allocs":453,"constraint_count":0,"constraint_retries":0,"elaborate_steps":229,"infer_steps":273,"meta_created":10,"meta_solved":10,"prop_allocs":0,"prop_firings":0,"reduce_steps":615,"resolution_cycles":10,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":121,"zonk_steps":349},"memory":{"gc_ms":53,"mem_after_bytes":143878840,"mem_before_bytes":143840360,"mem_retained_bytes":38480},"phases":{"elaborate_ms":94,"parse_ms":0,"qtt_ms":75,"reduce_ms":381,"trait_resolve_ms":0,"type_check_ms":307,"zonk_ms":3},"status":"pass","tests":18,"wall_ms":3253},{"cell_metrics":{"cells":19,"propagators":0},"file":"test-narrow-syntax-02.rkt","heartbeats":{"cell_allocs":151,"constraint_count":0,"constraint_retries":0,"elaborate_steps":42,"infer_steps":43,"meta_created":1,"meta_solved":1,"prop_allocs":0,"prop_firings":0,"reduce_steps":83,"resolution_cycles":1,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":6,"zonk_steps":54},"memory":{"gc_ms":73,"mem_after_bytes":184295696,"mem_before_bytes":184304072,"mem_retained_bytes":0},"phases":{"elaborate_ms":10,"parse_ms":0,"qtt_ms":4,"reduce_ms":43,"trait_resolve_ms":0,"type_check_ms":14,"zonk_ms":0},"status":"pass","tests":8,"wall_ms":7763},{"cell_metrics":{"cells":24,"propagators":0},"file":"test-path-expressions.rkt","heartbeats":{"cell_allocs":324,"constraint_count":0,"constraint_retries":0,"elaborate_steps":71,"infer_steps":188,"meta_created":16,"meta_solved":16,"prop_allocs":0,"prop_firings":0,"reduce_steps":326,"resolution_cycles":16,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":34,"zonk_steps":274},"memory":{"gc_ms":65,"mem_after_bytes":179287680,"mem_before_bytes":179297272,"mem_retained_bytes":0},"phases":{"elaborate_ms":18,"parse_ms":0,"qtt_ms":8,"reduce_ms":95,"trait_resolve_ms":0,"type_check_ms":69,"zonk_ms":0},"status":"pass","tests":20,"wall_ms":2109},{"cell_metrics":{"cells":17,"propagators":0},"file":"test-narrowing-search-01.rkt","heartbeats":{"cell_allocs":128,"constraint_count":0,"constraint_retries":0,"elaborate_steps":36,"infer_steps":36,"meta_created":0,"meta_solved":0,"prop_allocs":0,"prop_firings":0,"reduce_steps":89,"resolution_cycles":0,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":0,"zonk_steps":44},"memory":{"gc_ms":72,"mem_after_bytes":196186944,"mem_before_bytes":196124616,"mem_retained_bytes":62328},"phases":{"elaborate_ms":10,"parse_ms":0,"qtt_ms":0,"reduce_ms":44,"trait_resolve_ms":0,"type_check_ms":9,"zonk_ms":0},"status":"pass","tests":15,"wall_ms":7765},{"file":"test-pipe-compose.rkt","status":"pass","tests":45,"wall_ms":200},{"cell_metrics":{"cells":23,"propagators":0},"file":"test-numeric-traits-02.rkt","heartbeats":{"cell_allocs":615,"constraint_count":0,"constraint_retries":0,"elaborate_steps":527,"infer_steps":353,"meta_created":40,"meta_solved":37,"prop_allocs":0,"prop_firings":0,"reduce_steps":690,"resolution_cycles":10,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":177,"zonk_steps":707},"memory":{"gc_ms":59,"mem_after_bytes":164870592,"mem_before_bytes":164879272,"mem_retained_bytes":0},"phases":{"elaborate_ms":424,"parse_ms":0,"qtt_ms":131,"reduce_ms":540,"trait_resolve_ms":0,"type_check_ms":601,"zonk_ms":0},"status":"pass","tests":18,"wall_ms":4504},{"cell_metrics":{"cells":17,"propagators":0},"file":"test-posit-eq.rkt","heartbeats":{"cell_allocs":128,"constraint_count":0,"constraint_retries":0,"elaborate_steps":28,"infer_steps":40,"meta_created":0,"meta_solved":0,"prop_allocs":0,"prop_firings":0,"reduce_steps":62,"resolution_cycles":0,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":4,"zonk_steps":41},"memory":{"gc_ms":68,"mem_after_bytes":180182400,"mem_before_bytes":180122144,"mem_retained_bytes":60256},"phases":{"elaborate_ms":7,"parse_ms":0,"qtt_ms":0,"reduce_ms":27,"trait_resolve_ms":0,"type_check_ms":30,"zonk_ms":0},"status":"pass","tests":16,"wall_ms":1268},{"file":"test-posit-impl.rkt","status":"pass","tests":18,"wall_ms":170},{"cell_metrics":{"cells":22,"propagators":0},"file":"test-placeholder.rkt","heartbeats":{"cell_allocs":457,"constraint_count":0,"constraint_retries":0,"elaborate_steps":330,"infer_steps":274,"meta_created":0,"meta_solved":0,"prop_allocs":0,"prop_firings":0,"reduce_steps":291,"resolution_cycles":0,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":146,"zonk_steps":310},"memory":{"gc_ms":73,"mem_after_bytes":197346136,"mem_before_bytes":197331800,"mem_retained_bytes":14336},"phases":{"elaborate_ms":89,"parse_ms":0,"qtt_ms":59,"reduce_ms":112,"trait_resolve_ms":0,"type_check_ms":133,"zonk_ms":0},"status":"pass","tests":20,"wall_ms":2350},{"cell_metrics":{"cells":19,"propagators":0},"file":"test-posit16.rkt","heartbeats":{"cell_allocs":255,"constraint_count":0,"constraint_retries":0,"elaborate_steps":48,"infer_steps":42,"meta_created":0,"meta_solved":0,"prop_allocs":0,"prop_firings":0,"reduce_steps":43,"resolution_cycles":0,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":10,"zonk_steps":52},"memory":{"gc_ms":68,"mem_after_bytes":181057064,"mem_before_bytes":181022304,"mem_retained_bytes":34760},"phases":{"elaborate_ms":8,"parse_ms":0,"qtt_ms":3,"reduce_ms":12,"trait_resolve_ms":0,"type_check_ms":15,"zonk_ms":0},"status":"pass","tests":23,"wall_ms":2011},{"cell_metrics":{"cells":17,"propagators":0},"file":"test-posit-identity.rkt","heartbeats":{"cell_allocs":215,"constraint_count":0,"constraint_retries":0,"elaborate_steps":47,"infer_steps":124,"meta_created":7,"meta_solved":7,"prop_allocs":0,"prop_firings":0,"reduce_steps":386,"resolution_cycles":7,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":37,"zonk_steps":132},"memory":{"gc_ms":62,"mem_after_bytes":165011216,"mem_before_bytes":165010984,"mem_retained_bytes":232},"phases":{"elaborate_ms":23,"parse_ms":0,"qtt_ms":0,"reduce_ms":1137,"trait_resolve_ms":0,"type_check_ms":129,"zonk_ms":0},"status":"pass","tests":13,"wall_ms":3203},{"cell_metrics":{"cells":19,"propagators":0},"file":"test-posit32.rkt","heartbeats":{"cell_allocs":255,"constraint_count":0,"constraint_retries":0,"elaborate_steps":48,"infer_steps":42,"meta_created":0,"meta_solved":0,"prop_allocs":0,"prop_firings":0,"reduce_steps":43,"resolution_cycles":0,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":10,"zonk_steps":52},"memory":{"gc_ms":75,"mem_after_bytes":197990456,"mem_before_bytes":197869416,"mem_retained_bytes":121040},"phases":{"elaborate_ms":12,"parse_ms":0,"qtt_ms":4,"reduce_ms":13,"trait_resolve_ms":0,"type_check_ms":13,"zonk_ms":0},"status":"pass","tests":23,"wall_ms":2202},{"file":"test-postfix-index-01.rkt","status":"pass","tests":11,"wall_ms":56},{"file":"test-postfix-index-02.rkt","status":"pass","tests":12,"wall_ms":56},{"file":"test-parse-reader.rkt","status":"pass","tests":108,"wall_ms":7325},{"cell_metrics":{"cells":41,"propagators":0},"file":"test-pattern-defn-01.rkt","heartbeats":{"cell_allocs":711,"constraint_count":0,"constraint_retries":0,"elaborate_steps":206,"infer_steps":187,"meta_created":15,"meta_solved":14,"prop_allocs":0,"prop_firings":0,"reduce_steps":215,"resolution_cycles":14,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":44,"zonk_steps":258},"memory":{"gc_ms":94,"mem_after_bytes":215862328,"mem_before_bytes":215765072,"mem_retained_bytes":97256},"phases":{"elaborate_ms":63,"parse_ms":0,"qtt_ms":19,"reduce_ms":131,"trait_resolve_ms":0,"type_check_ms":94,"zonk_ms":0},"status":"pass","tests":14,"wall_ms":7812},{"cell_metrics":{"cells":19,"propagators":0},"file":"test-posit64.rkt","heartbeats":{"cell_allocs":255,"constraint_count":0,"constraint_retries":0,"elaborate_steps":48,"infer_steps":42,"meta_created":0,"meta_solved":0,"prop_allocs":0,"prop_firings":0,"reduce_steps":43,"resolution_cycles":0,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":10,"zonk_steps":52},"memory":{"gc_ms":70,"mem_after_bytes":181478976,"mem_before_bytes":181487424,"mem_retained_bytes":0},"phases":{"elaborate_ms":10,"parse_ms":0,"qtt_ms":2,"reduce_ms":13,"trait_resolve_ms":0,"type_check_ms":16,"zonk_ms":0},"status":"pass","tests":23,"wall_ms":2164},{"cell_metrics":{"cells":19,"propagators":0},"file":"test-posit8.rkt","heartbeats":{"cell_allocs":255,"constraint_count":0,"constraint_retries":0,"elaborate_steps":48,"infer_steps":42,"meta_created":0,"meta_solved":0,"prop_allocs":0,"prop_firings":0,"reduce_steps":43,"resolution_cycles":0,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":10,"zonk_steps":52},"memory":{"gc_ms":63,"mem_after_bytes":165451520,"mem_before_bytes":165461320,"mem_retained_bytes":0},"phases":{"elaborate_ms":11,"parse_ms":0,"qtt_ms":3,"reduce_ms":14,"trait_resolve_ms":0,"type_check_ms":13,"zonk_ms":0},"status":"pass","tests":23,"wall_ms":1982},{"cell_metrics":{"cells":27,"propagators":0},"file":"test-pipe-compose-e2e-01.rkt","heartbeats":{"cell_allocs":244,"constraint_count":0,"constraint_retries":0,"elaborate_steps":92,"infer_steps":115,"meta_created":0,"meta_solved":0,"prop_allocs":0,"prop_firings":0,"reduce_steps":39,"resolution_cycles":0,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":59,"zonk_steps":100},"memory":{"gc_ms":87,"mem_after_bytes":199862792,"mem_before_bytes":199809416,"mem_retained_bytes":53376},"phases":{"elaborate_ms":35,"parse_ms":0,"qtt_ms":59,"reduce_ms":5,"trait_resolve_ms":0,"type_check_ms":84,"zonk_ms":0},"status":"pass","tests":5,"wall_ms":7269},{"file":"test-prelude.rkt","status":"pass","tests":41,"wall_ms":180},{"file":"test-pretty-print.rkt","status":"pass","tests":41,"wall_ms":271},{"cell_metrics":{"cells":62,"propagators":0},"file":"test-pattern-defn-02.rkt","heartbeats":{"cell_allocs":1729,"constraint_count":0,"constraint_retries":0,"elaborate_steps":386,"infer_steps":391,"meta_created":25,"meta_solved":24,"prop_allocs":0,"prop_firings":0,"reduce_steps":418,"resolution_cycles":24,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":101,"zonk_steps":521},"memory":{"gc_ms":72,"mem_after_bytes":179378032,"mem_before_bytes":179362728,"mem_retained_bytes":15304},"phases":{"elaborate_ms":142,"parse_ms":0,"qtt_ms":24,"reduce_ms":314,"trait_resolve_ms":0,"type_check_ms":254,"zonk_ms":0},"status":"pass","tests":14,"wall_ms":8891},{"cell_metrics":{"cells":28,"propagators":0},"file":"test-pipe-compose-e2e-02a.rkt","heartbeats":{"cell_allocs":301,"constraint_count":0,"constraint_retries":0,"elaborate_steps":118,"infer_steps":139,"meta_created":0,"meta_solved":0,"prop_allocs":0,"prop_firings":0,"reduce_steps":55,"resolution_cycles":0,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":59,"zonk_steps":136},"memory":{"gc_ms":74,"mem_after_bytes":180972576,"mem_before_bytes":180871544,"mem_retained_bytes":101032},"phases":{"elaborate_ms":40,"parse_ms":0,"qtt_ms":116,"reduce_ms":20,"trait_resolve_ms":0,"type_check_ms":128,"zonk_ms":0},"status":"pass","tests":7,"wall_ms":7770},{"file":"test-process-parse-01.rkt","status":"pass","tests":17,"wall_ms":225},{"cell_metrics":{"cells":29,"propagators":0},"file":"test-prelude-collections.rkt","heartbeats":{"cell_allocs":473,"constraint_count":0,"constraint_retries":0,"elaborate_steps":72,"infer_steps":67,"meta_created":1,"meta_solved":0,"prop_allocs":0,"prop_firings":0,"reduce_steps":34,"resolution_cycles":0,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":19,"zonk_steps":143},"memory":{"gc_ms":63,"mem_after_bytes":156094216,"mem_before_bytes":156095328,"mem_retained_bytes":0},"phases":{"elaborate_ms":22,"parse_ms":0,"qtt_ms":7,"reduce_ms":0,"trait_resolve_ms":0,"type_check_ms":27,"zonk_ms":0},"status":"pass","tests":17,"wall_ms":2866},{"file":"test-propagator-descending-01.rkt","status":"pass","tests":15,"wall_ms":4},{"file":"test-propagator-bsp.rkt","status":"pass","tests":18,"wall_ms":197},{"cell_metrics":{"cells":21,"propagators":0},"file":"test-prelude-numerics.rkt","heartbeats":{"cell_allocs":186,"constraint_count":0,"constraint_retries":0,"elaborate_steps":69,"infer_steps":50,"meta_created":2,"meta_solved":2,"prop_allocs":0,"prop_firings":0,"reduce_steps":51,"resolution_cycles":2,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":34,"zonk_steps":93},"memory":{"gc_ms":89,"mem_after_bytes":215621304,"mem_before_bytes":215623360,"mem_retained_bytes":0},"phases":{"elaborate_ms":25,"parse_ms":0,"qtt_ms":29,"reduce_ms":13,"trait_resolve_ms":0,"type_check_ms":56,"zonk_ms":0},"status":"pass","tests":9,"wall_ms":2052},{"cell_metrics":{"cells":22,"propagators":0},"file":"test-process-ws-01.rkt","heartbeats":{"cell_allocs":95,"constraint_count":0,"constraint_retries":0,"elaborate_steps":8,"infer_steps":2,"meta_created":0,"meta_solved":0,"prop_allocs":0,"prop_firings":0,"reduce_steps":2,"resolution_cycles":0,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":0,"zonk_steps":0},"memory":{"gc_ms":69,"mem_after_bytes":179328928,"mem_before_bytes":179346192,"mem_retained_bytes":0},"phases":{"elaborate_ms":4,"parse_ms":0,"qtt_ms":0,"reduce_ms":0,"trait_resolve_ms":0,"type_check_ms":0,"zonk_ms":0},"status":"pass","tests":24,"wall_ms":584},{"cell_metrics":{"cells":29,"propagators":0},"file":"test-pipe-compose-e2e-03.rkt","heartbeats":{"cell_allocs":223,"constraint_count":0,"constraint_retries":0,"elaborate_steps":113,"infer_steps":137,"meta_created":0,"meta_solved":0,"prop_allocs":0,"prop_firings":0,"reduce_steps":51,"resolution_cycles":0,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":59,"zonk_steps":131},"memory":{"gc_ms":86,"mem_after_bytes":202152680,"mem_before_bytes":202107416,"mem_retained_bytes":45264},"phases":{"elaborate_ms":35,"parse_ms":0,"qtt_ms":86,"reduce_ms":16,"trait_resolve_ms":0,"type_check_ms":102,"zonk_ms":0},"status":"pass","tests":4,"wall_ms":8164},{"file":"test-propagator-network.rkt","status":"pass","tests":16,"wall_ms":140},{"file":"test-propagator.rkt","status":"pass","tests":27,"wall_ms":8},{"file":"test-propagator-persistence.rkt","status":"pass","tests":17,"wall_ms":151},{"file":"test-propagator-types.rkt","status":"pass","tests":32,"wall_ms":285},{"file":"test-properties.rkt","status":"pass","tests":13,"wall_ms":1348},{"cell_metrics":{"cells":27,"propagators":0},"file":"test-process-ws-02.rkt","heartbeats":{"cell_allocs":319,"constraint_count":0,"constraint_retries":0,"elaborate_steps":23,"infer_steps":6,"meta_created":0,"meta_solved":0,"prop_allocs":0,"prop_firings":0,"reduce_steps":6,"resolution_cycles":0,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":0,"zonk_steps":0},"memory":{"gc_ms":71,"mem_after_bytes":180778328,"mem_before_bytes":180780232,"mem_retained_bytes":0},"phases":{"elaborate_ms":6,"parse_ms":0,"qtt_ms":0,"reduce_ms":0,"trait_resolve_ms":0,"type_check_ms":1,"zonk_ms":0},"status":"pass","tests":7,"wall_ms":1905},{"file":"test-provenance.rkt","status":"pass","tests":8,"wall_ms":71},{"cell_metrics":{"cells":25,"propagators":0},"file":"test-propagator-lvar.rkt","heartbeats":{"cell_allocs":737,"constraint_count":0,"constraint_retries":0,"elaborate_steps":180,"infer_steps":223,"meta_created":4,"meta_solved":4,"prop_allocs":0,"prop_firings":0,"reduce_steps":278,"resolution_cycles":4,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":136,"zonk_steps":224},"memory":{"gc_ms":80,"mem_after_bytes":202123792,"mem_before_bytes":202096680,"mem_retained_bytes":27112},"phases":{"elaborate_ms":71,"parse_ms":0,"qtt_ms":86,"reduce_ms":100,"trait_resolve_ms":0,"type_check_ms":173,"zonk_ms":1},"status":"pass","tests":8,"wall_ms":2241},{"cell_metrics":{"cells":19,"propagators":0},"file":"test-prelude-system-02.rkt","heartbeats":{"cell_allocs":382,"constraint_count":0,"constraint_retries":0,"elaborate_steps":103,"infer_steps":156,"meta_created":0,"meta_solved":0,"prop_allocs":0,"prop_firings":0,"reduce_steps":267,"resolution_cycles":0,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":41,"zonk_steps":102},"memory":{"gc_ms":62,"mem_after_bytes":165711160,"mem_before_bytes":165713816,"mem_retained_bytes":0},"phases":{"elaborate_ms":30,"parse_ms":0,"qtt_ms":0,"reduce_ms":161,"trait_resolve_ms":0,"type_check_ms":167,"zonk_ms":0},"status":"pass","tests":16,"wall_ms":3827},{"cell_metrics":{"cells":25,"propagators":0},"file":"test-propagator-integration.rkt","heartbeats":{"cell_allocs":619,"constraint_count":0,"constraint_retries":0,"elaborate_steps":142,"infer_steps":150,"meta_created":0,"meta_solved":0,"prop_allocs":0,"prop_firings":0,"reduce_steps":153,"resolution_cycles":0,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":83,"zonk_steps":123},"memory":{"gc_ms":61,"mem_after_bytes":156935256,"mem_before_bytes":156894776,"mem_retained_bytes":40480},"phases":{"elaborate_ms":38,"parse_ms":0,"qtt_ms":33,"reduce_ms":26,"trait_resolve_ms":0,"type_check_ms":82,"zonk_ms":1},"status":"pass","tests":16,"wall_ms":2474},{"cell_metrics":{"cells":21,"propagators":3},"file":"test-prelude-system-01.rkt","heartbeats":{"cell_allocs":302,"constraint_count":0,"constraint_retries":0,"elaborate_steps":94,"infer_steps":222,"meta_created":21,"meta_solved":21,"prop_allocs":0,"prop_firings":0,"reduce_steps":785,"resolution_cycles":19,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":60,"zonk_steps":208},"memory":{"gc_ms":98,"mem_after_bytes":181807136,"mem_before_bytes":181781544,"mem_retained_bytes":25592},"phases":{"elaborate_ms":220,"parse_ms":0,"qtt_ms":0,"reduce_ms":2250,"trait_resolve_ms":0,"type_check_ms":440,"zonk_ms":0},"status":"pass","tests":15,"wall_ms":6026},{"file":"test-provenance-errors.rkt","status":"pass","tests":26,"wall_ms":4118},{"file":"test-qtt.rkt","status":"pass","tests":27,"wall_ms":185},{"cell_metrics":{"cells":21,"propagators":0},"file":"test-pvec-ops-eval.rkt","heartbeats":{"cell_allocs":673,"constraint_count":0,"constraint_retries":0,"elaborate_steps":209,"infer_steps":241,"meta_created":4,"meta_solved":4,"prop_allocs":0,"prop_firings":0,"reduce_steps":147,"resolution_cycles":4,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":40,"zonk_steps":165},"memory":{"gc_ms":85,"mem_after_bytes":202253800,"mem_before_bytes":202257880,"mem_retained_bytes":0},"phases":{"elaborate_ms":80,"parse_ms":0,"qtt_ms":15,"reduce_ms":6,"trait_resolve_ms":0,"type_check_ms":141,"zonk_ms":0},"status":"pass","tests":13,"wall_ms":2851},{"cell_metrics":{"cells":19,"propagators":0},"file":"test-pvec-traits.rkt","heartbeats":{"cell_allocs":452,"constraint_count":0,"constraint_retries":0,"elaborate_steps":119,"infer_steps":122,"meta_created":0,"meta_solved":0,"prop_allocs":0,"prop_firings":0,"reduce_steps":206,"resolution_cycles":0,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":28,"zonk_steps":218},"memory":{"gc_ms":69,"mem_after_bytes":165875512,"mem_before_bytes":165878128,"mem_retained_bytes":0},"phases":{"elaborate_ms":43,"parse_ms":0,"qtt_ms":2,"reduce_ms":151,"trait_resolve_ms":0,"type_check_ms":84,"zonk_ms":0},"status":"pass","tests":17,"wall_ms":3139},{"cell_metrics":{"cells":20,"propagators":0},"file":"test-pvec.rkt","heartbeats":{"cell_allocs":496,"constraint_count":0,"constraint_retries":0,"elaborate_steps":180,"infer_steps":155,"meta_created":5,"meta_solved":4,"prop_allocs":0,"prop_firings":0,"reduce_steps":250,"resolution_cycles":4,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":18,"zonk_steps":188},"memory":{"gc_ms":67,"mem_after_bytes":157618608,"mem_before_bytes":157621576,"mem_retained_bytes":0},"phases":{"elaborate_ms":55,"parse_ms":0,"qtt_ms":3,"reduce_ms":67,"trait_resolve_ms":0,"type_check_ms":62,"zonk_ms":0},"status":"pass","tests":48,"wall_ms":3761},{"file":"test-reader-relational.rkt","status":"pass","tests":10,"wall_ms":74},{"cell_metrics":{"cells":63,"propagators":0},"file":"test-property-ws.rkt","heartbeats":{"cell_allocs":8806,"constraint_count":0,"constraint_retries":0,"elaborate_steps":1892,"infer_steps":1483,"meta_created":66,"meta_solved":26,"prop_allocs":0,"prop_firings":0,"reduce_steps":1303,"resolution_cycles":26,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":900,"zonk_steps":1262},"memory":{"gc_ms":90,"mem_after_bytes":181955416,"mem_before_bytes":182013936,"mem_retained_bytes":0},"phases":{"elaborate_ms":784,"parse_ms":0,"qtt_ms":786,"reduce_ms":0,"trait_resolve_ms":0,"type_check_ms":1946,"zonk_ms":3},"status":"pass","tests":12,"wall_ms":6063},{"file":"test-readiness-propagator.rkt","status":"pass","tests":21,"wall_ms":5},{"cell_metrics":{"cells":25,"propagators":0},"file":"test-postfix-index-03.rkt","heartbeats":{"cell_allocs":606,"constraint_count":0,"constraint_retries":0,"elaborate_steps":168,"infer_steps":337,"meta_created":50,"meta_solved":50,"prop_allocs":0,"prop_firings":0,"reduce_steps":417,"resolution_cycles":50,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":150,"zonk_steps":446},"memory":{"gc_ms":96,"mem_after_bytes":217784360,"mem_before_bytes":216464856,"mem_retained_bytes":1319504},"phases":{"elaborate_ms":116,"parse_ms":0,"qtt_ms":206,"reduce_ms":67,"trait_resolve_ms":0,"type_check_ms":305,"zonk_ms":0},"status":"pass","tests":12,"wall_ms":9429},{"file":"test-reader.rkt","status":"pass","tests":70,"wall_ms":442},{"cell_metrics":{"cells":17,"propagators":0},"file":"test-reduction-perf-01-01.rkt","heartbeats":{"cell_allocs":64,"constraint_count":0,"constraint_retries":0,"elaborate_steps":8,"infer_steps":10,"meta_created":0,"meta_solved":0,"prop_allocs":0,"prop_firings":0,"reduce_steps":12,"resolution_cycles":0,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":2,"zonk_steps":12},"memory":{"gc_ms":63,"mem_after_bytes":158802144,"mem_before_bytes":158800456,"mem_retained_bytes":1688},"phases":{"elaborate_ms":2,"parse_ms":0,"qtt_ms":0,"reduce_ms":4,"trait_resolve_ms":0,"type_check_ms":4,"zonk_ms":0},"status":"pass","tests":4,"wall_ms":628},{"file":"test-reduction.rkt","status":"pass","tests":27,"wall_ms":212},{"cell_metrics":{"cells":17,"propagators":0},"file":"test-qtt-pipeline.rkt","heartbeats":{"cell_allocs":470,"constraint_count":0,"constraint_retries":0,"elaborate_steps":155,"infer_steps":127,"meta_created":0,"meta_solved":0,"prop_allocs":0,"prop_firings":0,"reduce_steps":169,"resolution_cycles":0,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":77,"zonk_steps":160},"memory":{"gc_ms":71,"mem_after_bytes":181978824,"mem_before_bytes":181980880,"mem_retained_bytes":0},"phases":{"elaborate_ms":43,"parse_ms":0,"qtt_ms":65,"reduce_ms":56,"trait_resolve_ms":0,"type_check_ms":85,"zonk_ms":0},"status":"pass","tests":19,"wall_ms":3484},{"cell_metrics":{"cells":22,"propagators":0},"file":"test-pvec-fold.rkt","heartbeats":{"cell_allocs":299,"constraint_count":0,"constraint_retries":0,"elaborate_steps":188,"infer_steps":273,"meta_created":15,"meta_solved":15,"prop_allocs":0,"prop_firings":0,"reduce_steps":1296,"resolution_cycles":15,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":112,"zonk_steps":267},"memory":{"gc_ms":95,"mem_after_bytes":223156056,"mem_before_bytes":223195512,"mem_retained_bytes":0},"phases":{"elaborate_ms":65,"parse_ms":0,"qtt_ms":13,"reduce_ms":2904,"trait_resolve_ms":0,"type_check_ms":185,"zonk_ms":0},"status":"pass","tests":13,"wall_ms":6093},{"cell_metrics":{"cells":31,"propagators":0},"file":"test-pipe-compose-e2e-02b.rkt","heartbeats":{"cell_allocs":599,"constraint_count":0,"constraint_retries":0,"elaborate_steps":240,"infer_steps":373,"meta_created":15,"meta_solved":15,"prop_allocs":0,"prop_firings":0,"reduce_steps":944,"resolution_cycles":15,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":170,"zonk_steps":372},"memory":{"gc_ms":66,"mem_after_bytes":162005800,"mem_before_bytes":162003016,"mem_retained_bytes":2784},"phases":{"elaborate_ms":148,"parse_ms":0,"qtt_ms":153,"reduce_ms":7152,"trait_resolve_ms":0,"type_check_ms":400,"zonk_ms":0},"status":"pass","tests":8,"wall_ms":16319},{"cell_metrics":{"cells":18,"propagators":0},"file":"test-quire.rkt","heartbeats":{"cell_allocs":315,"constraint_count":0,"constraint_retries":0,"elaborate_steps":61,"infer_steps":77,"meta_created":0,"meta_solved":0,"prop_allocs":0,"prop_firings":0,"reduce_steps":57,"resolution_cycles":0,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":28,"zonk_steps":54},"memory":{"gc_ms":86,"mem_after_bytes":203951312,"mem_before_bytes":203953856,"mem_retained_bytes":0},"phases":{"elaborate_ms":25,"parse_ms":0,"qtt_ms":3,"reduce_ms":19,"trait_resolve_ms":0,"type_check_ms":28,"zonk_ms":0},"status":"pass","tests":31,"wall_ms":3686},{"cell_metrics":{"cells":18,"propagators":0},"file":"test-rat.rkt","heartbeats":{"cell_allocs":340,"constraint_count":0,"constraint_retries":0,"elaborate_steps":49,"infer_steps":48,"meta_created":0,"meta_solved":0,"prop_allocs":0,"prop_firings":0,"reduce_steps":50,"resolution_cycles":0,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":3,"zonk_steps":63},"memory":{"gc_ms":64,"mem_after_bytes":166481240,"mem_before_bytes":166483296,"mem_retained_bytes":0},"phases":{"elaborate_ms":12,"parse_ms":0,"qtt_ms":1,"reduce_ms":23,"trait_resolve_ms":0,"type_check_ms":18,"zonk_ms":1},"status":"pass","tests":31,"wall_ms":3320},{"file":"test-relational-types.rkt","status":"pass","tests":62,"wall_ms":414},{"file":"test-relations-runtime.rkt","status":"pass","tests":15,"wall_ms":102},{"file":"test-retraction-stratum.rkt","status":"pass","tests":39,"wall_ms":272},{"cell_metrics":{"cells":25,"propagators":0},"file":"test-punify-integration.rkt","heartbeats":{"cell_allocs":725,"constraint_count":0,"constraint_retries":0,"elaborate_steps":138,"infer_steps":283,"meta_created":41,"meta_solved":39,"prop_allocs":0,"prop_firings":0,"reduce_steps":514,"resolution_cycles":38,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":97,"zonk_steps":303},"memory":{"gc_ms":81,"mem_after_bytes":181640752,"mem_before_bytes":181602928,"mem_retained_bytes":37824},"phases":{"elaborate_ms":186,"parse_ms":0,"qtt_ms":44,"reduce_ms":1024,"trait_resolve_ms":0,"type_check_ms":369,"zonk_ms":1},"status":"pass","tests":24,"wall_ms":7983},{"cell_metrics":{"cells":22,"propagators":0},"file":"test-quote.rkt","heartbeats":{"cell_allocs":421,"constraint_count":0,"constraint_retries":0,"elaborate_steps":85,"infer_steps":154,"meta_created":0,"meta_solved":0,"prop_allocs":0,"prop_firings":0,"reduce_steps":97,"resolution_cycles":0,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":31,"zonk_steps":63},"memory":{"gc_ms":89,"mem_after_bytes":203074536,"mem_before_bytes":203085008,"mem_retained_bytes":0},"phases":{"elaborate_ms":28,"parse_ms":0,"qtt_ms":3,"reduce_ms":18,"trait_resolve_ms":0,"type_check_ms":85,"zonk_ms":0},"status":"pass","tests":50,"wall_ms":4854},{"cell_metrics":{"cells":23,"propagators":0},"file":"test-schema-registry.rkt","heartbeats":{"cell_allocs":60,"constraint_count":0,"constraint_retries":0,"elaborate_steps":3,"infer_steps":0,"meta_created":0,"meta_solved":0,"prop_allocs":0,"prop_firings":0,"reduce_steps":0,"resolution_cycles":0,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":0,"zonk_steps":3},"memory":{"gc_ms":83,"mem_after_bytes":203357160,"mem_before_bytes":203352704,"mem_retained_bytes":4456},"phases":{"elaborate_ms":0,"parse_ms":0,"qtt_ms":0,"reduce_ms":0,"trait_resolve_ms":0,"type_check_ms":0,"zonk_ms":0},"status":"pass","tests":12,"wall_ms":973},{"cell_metrics":{"cells":51,"propagators":0},"file":"test-relational-e2e.rkt","heartbeats":{"cell_allocs":1192,"constraint_count":0,"constraint_retries":0,"elaborate_steps":213,"infer_steps":256,"meta_created":0,"meta_solved":0,"prop_allocs":0,"prop_firings":0,"reduce_steps":136,"resolution_cycles":0,"solver_backtracks":32,"solver_unifies":91,"trait_resolve_steps":0,"unify_steps":0,"zonk_steps":269},"memory":{"gc_ms":66,"mem_after_bytes":162323144,"mem_before_bytes":162324776,"mem_retained_bytes":0},"phases":{"elaborate_ms":66,"parse_ms":0,"qtt_ms":0,"reduce_ms":69,"trait_resolve_ms":0,"type_check_ms":77,"zonk_ms":3},"status":"pass","tests":15,"wall_ms":2616},{"cell_metrics":{"cells":24,"propagators":0},"file":"test-reducible-01.rkt","heartbeats":{"cell_allocs":354,"constraint_count":0,"constraint_retries":0,"elaborate_steps":124,"infer_steps":244,"meta_created":14,"meta_solved":14,"prop_allocs":0,"prop_firings":0,"reduce_steps":702,"resolution_cycles":14,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":123,"zonk_steps":371},"memory":{"gc_ms":74,"mem_after_bytes":180692288,"mem_before_bytes":180688176,"mem_retained_bytes":4112},"phases":{"elaborate_ms":97,"parse_ms":0,"qtt_ms":30,"reduce_ms":1948,"trait_resolve_ms":0,"type_check_ms":577,"zonk_ms":0},"status":"pass","tests":12,"wall_ms":4804},{"cell_metrics":{"cells":41,"propagators":0},"file":"test-schema-e2e.rkt","heartbeats":{"cell_allocs":978,"constraint_count":0,"constraint_retries":0,"elaborate_steps":130,"infer_steps":135,"meta_created":22,"meta_solved":0,"prop_allocs":0,"prop_firings":0,"reduce_steps":44,"resolution_cycles":0,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":21,"zonk_steps":120},"memory":{"gc_ms":65,"mem_after_bytes":167632600,"mem_before_bytes":167653696,"mem_retained_bytes":0},"phases":{"elaborate_ms":49,"parse_ms":0,"qtt_ms":22,"reduce_ms":0,"trait_resolve_ms":0,"type_check_ms":45,"zonk_ms":0},"status":"pass","tests":11,"wall_ms":2036},{"file":"test-selection-parsing.rkt","status":"pass","tests":13,"wall_ms":137},{"cell_metrics":{"cells":25,"propagators":0},"file":"test-schema-types.rkt","heartbeats":{"cell_allocs":548,"constraint_count":0,"constraint_retries":0,"elaborate_steps":99,"infer_steps":101,"meta_created":18,"meta_solved":0,"prop_allocs":0,"prop_firings":0,"reduce_steps":34,"resolution_cycles":0,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":15,"zonk_steps":76},"memory":{"gc_ms":80,"mem_after_bytes":203679384,"mem_before_bytes":203687688,"mem_retained_bytes":0},"phases":{"elaborate_ms":34,"parse_ms":0,"qtt_ms":11,"reduce_ms":0,"trait_resolve_ms":0,"type_check_ms":37,"zonk_ms":0},"status":"pass","tests":14,"wall_ms":2333},{"cell_metrics":{"cells":64,"propagators":0},"file":"test-selection-compose.rkt","heartbeats":{"cell_allocs":1215,"constraint_count":0,"constraint_retries":0,"elaborate_steps":71,"infer_steps":62,"meta_created":4,"meta_solved":0,"prop_allocs":0,"prop_firings":0,"reduce_steps":32,"resolution_cycles":0,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":24,"zonk_steps":70},"memory":{"gc_ms":70,"mem_after_bytes":180973088,"mem_before_bytes":180975368,"mem_retained_bytes":0},"phases":{"elaborate_ms":26,"parse_ms":0,"qtt_ms":19,"reduce_ms":0,"trait_resolve_ms":0,"type_check_ms":29,"zonk_ms":0},"status":"pass","tests":12,"wall_ms":2191},{"cell_metrics":{"cells":17,"propagators":0},"file":"test-refined-rat.rkt","heartbeats":{"cell_allocs":288,"constraint_count":0,"constraint_retries":0,"elaborate_steps":98,"infer_steps":218,"meta_created":0,"meta_solved":0,"prop_allocs":0,"prop_firings":0,"reduce_steps":451,"resolution_cycles":0,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":50,"zonk_steps":196},"memory":{"gc_ms":71,"mem_after_bytes":183881832,"mem_before_bytes":183037512,"mem_retained_bytes":844320},"phases":{"elaborate_ms":32,"parse_ms":0,"qtt_ms":0,"reduce_ms":436,"trait_resolve_ms":0,"type_check_ms":198,"zonk_ms":2},"status":"pass","tests":18,"wall_ms":6131},{"file":"test-sess-inference.rkt","status":"pass","tests":29,"wall_ms":369},{"cell_metrics":{"cells":17,"propagators":0},"file":"test-resolution-confluence-01.rkt","heartbeats":{"cell_allocs":640,"constraint_count":0,"constraint_retries":0,"elaborate_steps":102,"infer_steps":155,"meta_created":0,"meta_solved":0,"prop_allocs":0,"prop_firings":0,"reduce_steps":1269,"resolution_cycles":0,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":11,"zonk_steps":164},"memory":{"gc_ms":90,"mem_after_bytes":205382120,"mem_before_bytes":205363960,"mem_retained_bytes":18160},"phases":{"elaborate_ms":32,"parse_ms":0,"qtt_ms":0,"reduce_ms":1611,"trait_resolve_ms":0,"type_check_ms":92,"zonk_ms":0},"status":"pass","tests":19,"wall_ms":5404},{"cell_metrics":{"cells":77,"propagators":0},"file":"test-schema-properties.rkt","heartbeats":{"cell_allocs":2454,"constraint_count":0,"constraint_retries":0,"elaborate_steps":349,"infer_steps":323,"meta_created":38,"meta_solved":10,"prop_allocs":0,"prop_firings":0,"reduce_steps":419,"resolution_cycles":10,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":83,"zonk_steps":404},"memory":{"gc_ms":79,"mem_after_bytes":181967912,"mem_before_bytes":181923064,"mem_retained_bytes":44848},"phases":{"elaborate_ms":113,"parse_ms":0,"qtt_ms":132,"reduce_ms":138,"trait_resolve_ms":0,"type_check_ms":186,"zonk_ms":0},"status":"pass","tests":30,"wall_ms":5354},{"cell_metrics":{"cells":37,"propagators":0},"file":"test-selection-registry.rkt","heartbeats":{"cell_allocs":578,"constraint_count":0,"constraint_retries":0,"elaborate_steps":10,"infer_steps":1,"meta_created":0,"meta_solved":0,"prop_allocs":0,"prop_firings":0,"reduce_steps":0,"resolution_cycles":0,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":0,"zonk_steps":10},"memory":{"gc_ms":83,"mem_after_bytes":203940528,"mem_before_bytes":203938048,"mem_retained_bytes":2480},"phases":{"elaborate_ms":6,"parse_ms":0,"qtt_ms":0,"reduce_ms":0,"trait_resolve_ms":0,"type_check_ms":0,"zonk_ms":0},"status":"pass","tests":10,"wall_ms":2039},{"cell_metrics":{"cells":24,"propagators":0},"file":"test-session-async-01.rkt","heartbeats":{"cell_allocs":225,"constraint_count":0,"constraint_retries":0,"elaborate_steps":13,"infer_steps":2,"meta_created":0,"meta_solved":0,"prop_allocs":0,"prop_firings":0,"reduce_steps":2,"resolution_cycles":0,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":0,"zonk_steps":0},"memory":{"gc_ms":74,"mem_after_bytes":183264640,"mem_before_bytes":183258552,"mem_retained_bytes":6088},"phases":{"elaborate_ms":2,"parse_ms":0,"qtt_ms":0,"reduce_ms":0,"trait_resolve_ms":0,"type_check_ms":2,"zonk_ms":0},"status":"pass","tests":21,"wall_ms":1448},{"cell_metrics":{"cells":33,"propagators":0},"file":"test-selection-typing.rkt","heartbeats":{"cell_allocs":746,"constraint_count":0,"constraint_retries":0,"elaborate_steps":121,"infer_steps":131,"meta_created":18,"meta_solved":0,"prop_allocs":0,"prop_firings":0,"reduce_steps":61,"resolution_cycles":0,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":27,"zonk_steps":118},"memory":{"gc_ms":72,"mem_after_bytes":181258792,"mem_before_bytes":181259800,"mem_retained_bytes":0},"phases":{"elaborate_ms":36,"parse_ms":0,"qtt_ms":22,"reduce_ms":0,"trait_resolve_ms":0,"type_check_ms":51,"zonk_ms":1},"status":"pass","tests":12,"wall_ms":2245},{"cell_metrics":{"cells":17,"propagators":0},"file":"test-refined-int.rkt","heartbeats":{"cell_allocs":476,"constraint_count":0,"constraint_retries":0,"elaborate_steps":129,"infer_steps":274,"meta_created":0,"meta_solved":0,"prop_allocs":0,"prop_firings":0,"reduce_steps":520,"resolution_cycles":0,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":67,"zonk_steps":248},"memory":{"gc_ms":63,"mem_after_bytes":160949784,"mem_before_bytes":160191688,"mem_retained_bytes":758096},"phases":{"elaborate_ms":39,"parse_ms":0,"qtt_ms":7,"reduce_ms":461,"trait_resolve_ms":0,"type_check_ms":257,"zonk_ms":0},"status":"pass","tests":26,"wall_ms":8232},{"cell_metrics":{"cells":21,"propagators":0},"file":"test-session-async-e2e.rkt","heartbeats":{"cell_allocs":954,"constraint_count":0,"constraint_retries":0,"elaborate_steps":96,"infer_steps":32,"meta_created":0,"meta_solved":0,"prop_allocs":0,"prop_firings":0,"reduce_steps":24,"resolution_cycles":0,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":0,"zonk_steps":0},"memory":{"gc_ms":80,"mem_after_bytes":205608984,"mem_before_bytes":205542904,"mem_retained_bytes":66080},"phases":{"elaborate_ms":39,"parse_ms":0,"qtt_ms":0,"reduce_ms":0,"trait_resolve_ms":0,"type_check_ms":14,"zonk_ms":0},"status":"pass","tests":8,"wall_ms":1678},{"file":"test-session-deadlock-01.rkt","status":"pass","tests":9,"wall_ms":262},{"cell_metrics":{"cells":25,"propagators":0},"file":"test-session-boundary-01.rkt","heartbeats":{"cell_allocs":296,"constraint_count":0,"constraint_retries":0,"elaborate_steps":12,"infer_steps":0,"meta_created":0,"meta_solved":0,"prop_allocs":0,"prop_firings":0,"reduce_steps":0,"resolution_cycles":0,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":0,"zonk_steps":0},"memory":{"gc_ms":79,"mem_after_bytes":204267376,"mem_before_bytes":204264000,"mem_retained_bytes":3376},"phases":{"elaborate_ms":4,"parse_ms":0,"qtt_ms":0,"reduce_ms":0,"trait_resolve_ms":0,"type_check_ms":0,"zonk_ms":0},"status":"pass","tests":13,"wall_ms":853},{"file":"test-session-errors-01.rkt","status":"pass","tests":10,"wall_ms":385},{"cell_metrics":{"cells":24,"propagators":0},"file":"test-session-async-ws-01.rkt","heartbeats":{"cell_allocs":239,"constraint_count":0,"constraint_retries":0,"elaborate_steps":15,"infer_steps":2,"meta_created":0,"meta_solved":0,"prop_allocs":0,"prop_firings":0,"reduce_steps":2,"resolution_cycles":0,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":0,"zonk_steps":0},"memory":{"gc_ms":77,"mem_after_bytes":182133096,"mem_before_bytes":182133376,"mem_retained_bytes":0},"phases":{"elaborate_ms":5,"parse_ms":0,"qtt_ms":0,"reduce_ms":0,"trait_resolve_ms":0,"type_check_ms":2,"zonk_ms":0},"status":"pass","tests":9,"wall_ms":1516},{"cell_metrics":{"cells":17,"propagators":0},"file":"test-refined-subtyping.rkt","heartbeats":{"cell_allocs":472,"constraint_count":0,"constraint_retries":0,"elaborate_steps":83,"infer_steps":115,"meta_created":0,"meta_solved":0,"prop_allocs":0,"prop_firings":0,"reduce_steps":189,"resolution_cycles":0,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":43,"zonk_steps":120},"memory":{"gc_ms":95,"mem_after_bytes":224696824,"mem_before_bytes":224726088,"mem_retained_bytes":0},"phases":{"elaborate_ms":26,"parse_ms":0,"qtt_ms":19,"reduce_ms":87,"trait_resolve_ms":0,"type_check_ms":80,"zonk_ms":0},"status":"pass","tests":18,"wall_ms":8803},{"cell_metrics":{"cells":22,"propagators":0},"file":"test-session-caps-01.rkt","heartbeats":{"cell_allocs":473,"constraint_count":0,"constraint_retries":0,"elaborate_steps":18,"infer_steps":4,"meta_created":0,"meta_solved":0,"prop_allocs":0,"prop_firings":0,"reduce_steps":4,"resolution_cycles":0,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":0,"zonk_steps":0},"memory":{"gc_ms":74,"mem_after_bytes":183547208,"mem_before_bytes":183568296,"mem_retained_bytes":0},"phases":{"elaborate_ms":6,"parse_ms":0,"qtt_ms":0,"reduce_ms":0,"trait_resolve_ms":0,"type_check_ms":3,"zonk_ms":0},"status":"pass","tests":12,"wall_ms":1087},{"cell_metrics":{"cells":23,"propagators":0},"file":"test-session-caps-02.rkt","heartbeats":{"cell_allocs":487,"constraint_count":0,"constraint_retries":0,"elaborate_steps":20,"infer_steps":4,"meta_created":0,"meta_solved":0,"prop_allocs":0,"prop_firings":0,"reduce_steps":4,"resolution_cycles":0,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":0,"zonk_steps":0},"memory":{"gc_ms":73,"mem_after_bytes":181389424,"mem_before_bytes":181390560,"mem_retained_bytes":0},"phases":{"elaborate_ms":5,"parse_ms":0,"qtt_ms":0,"reduce_ms":0,"trait_resolve_ms":0,"type_check_ms":3,"zonk_ms":0},"status":"pass","tests":6,"wall_ms":1046},{"file":"test-session-lattice-01.rkt","status":"pass","tests":26,"wall_ms":201},{"file":"test-session-parse-02.rkt","status":"pass","tests":16,"wall_ms":174},{"file":"test-session-parse-01.rkt","status":"pass","tests":18,"wall_ms":250},{"cell_metrics":{"cells":23,"propagators":0},"file":"test-session-e2e-ws.rkt","heartbeats":{"cell_allocs":329,"constraint_count":0,"constraint_retries":0,"elaborate_steps":22,"infer_steps":6,"meta_created":0,"meta_solved":0,"prop_allocs":0,"prop_firings":0,"reduce_steps":6,"resolution_cycles":0,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":0,"zonk_steps":0},"memory":{"gc_ms":83,"mem_after_bytes":205744504,"mem_before_bytes":205677448,"mem_retained_bytes":67056},"phases":{"elaborate_ms":6,"parse_ms":0,"qtt_ms":0,"reduce_ms":0,"trait_resolve_ms":0,"type_check_ms":3,"zonk_ms":0},"status":"pass","tests":4,"wall_ms":822},{"file":"test-session-runtime-01.rkt","status":"pass","tests":20,"wall_ms":161},{"file":"test-session-runtime-02.rkt","status":"pass","tests":19,"wall_ms":160},{"cell_metrics":{"cells":95,"propagators":0},"file":"test-selection-paths.rkt","heartbeats":{"cell_allocs":2856,"constraint_count":0,"constraint_retries":0,"elaborate_steps":243,"infer_steps":264,"meta_created":8,"meta_solved":0,"prop_allocs":0,"prop_firings":0,"reduce_steps":116,"resolution_cycles":0,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":58,"zonk_steps":184},"memory":{"gc_ms":68,"mem_after_bytes":169072984,"mem_before_bytes":169061120,"mem_retained_bytes":11864},"phases":{"elaborate_ms":81,"parse_ms":0,"qtt_ms":80,"reduce_ms":0,"trait_resolve_ms":0,"type_check_ms":119,"zonk_ms":0},"status":"pass","tests":56,"wall_ms":5514},{"file":"test-session-propagators-01.rkt","status":"pass","tests":20,"wall_ms":316},{"file":"test-sessions.rkt","status":"pass","tests":13,"wall_ms":92},{"cell_metrics":{"cells":14,"propagators":0},"file":"test-search-heuristics-01.rkt","heartbeats":{"cell_allocs":0,"constraint_count":0,"constraint_retries":0,"elaborate_steps":0,"infer_steps":0,"meta_created":0,"meta_solved":0,"prop_allocs":0,"prop_firings":0,"reduce_steps":0,"resolution_cycles":0,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":0,"zonk_steps":0},"memory":{"gc_ms":73,"mem_after_bytes":180631512,"mem_before_bytes":180394056,"mem_retained_bytes":237456},"phases":{"elaborate_ms":0,"parse_ms":0,"qtt_ms":0,"reduce_ms":0,"trait_resolve_ms":0,"type_check_ms":0,"zonk_ms":0},"status":"pass","tests":41,"wall_ms":6116},{"file":"test-session-type-bridge-01.rkt","status":"pass","tests":25,"wall_ms":641},{"cell_metrics":{"cells":19,"propagators":0},"file":"test-session-throws-01.rkt","heartbeats":{"cell_allocs":174,"constraint_count":0,"constraint_retries":0,"elaborate_steps":19,"infer_steps":0,"meta_created":0,"meta_solved":0,"prop_allocs":0,"prop_firings":0,"reduce_steps":0,"resolution_cycles":0,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":0,"zonk_steps":0},"memory":{"gc_ms":95,"mem_after_bytes":205966080,"mem_before_bytes":205948744,"mem_retained_bytes":17336},"phases":{"elaborate_ms":6,"parse_ms":0,"qtt_ms":0,"reduce_ms":0,"trait_resolve_ms":0,"type_check_ms":0,"zonk_ms":0},"status":"pass","tests":10,"wall_ms":2064},{"cell_metrics":{"cells":25,"propagators":0},"file":"test-session-runtime-04.rkt","heartbeats":{"cell_allocs":860,"constraint_count":0,"constraint_retries":0,"elaborate_steps":28,"infer_steps":9,"meta_created":0,"meta_solved":0,"prop_allocs":0,"prop_firings":0,"reduce_steps":9,"resolution_cycles":0,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":0,"zonk_steps":0},"memory":{"gc_ms":73,"mem_after_bytes":182810816,"mem_before_bytes":182810784,"mem_retained_bytes":32},"phases":{"elaborate_ms":8,"parse_ms":0,"qtt_ms":0,"reduce_ms":0,"trait_resolve_ms":0,"type_check_ms":8,"zonk_ms":0},"status":"pass","tests":11,"wall_ms":2147},{"file":"test-solver-config.rkt","status":"pass","tests":13,"wall_ms":128},{"cell_metrics":{"cells":31,"propagators":0},"file":"test-session-elaborate-01.rkt","heartbeats":{"cell_allocs":645,"constraint_count":0,"constraint_retries":0,"elaborate_steps":32,"infer_steps":4,"meta_created":0,"meta_solved":0,"prop_allocs":0,"prop_firings":0,"reduce_steps":4,"resolution_cycles":0,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":0,"zonk_steps":0},"memory":{"gc_ms":63,"mem_after_bytes":160089904,"mem_before_bytes":160088720,"mem_retained_bytes":1184},"phases":{"elaborate_ms":9,"parse_ms":0,"qtt_ms":0,"reduce_ms":0,"trait_resolve_ms":0,"type_check_ms":3,"zonk_ms":0},"status":"pass","tests":19,"wall_ms":2978},{"file":"test-solver-occurs.rkt","status":"pass","tests":30,"wall_ms":176},{"cell_metrics":{"cells":27,"propagators":0},"file":"test-sexp-reader-parity.rkt","heartbeats":{"cell_allocs":231,"constraint_count":0,"constraint_retries":0,"elaborate_steps":89,"infer_steps":147,"meta_created":13,"meta_solved":13,"prop_allocs":0,"prop_firings":0,"reduce_steps":232,"resolution_cycles":13,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":64,"zonk_steps":190},"memory":{"gc_ms":76,"mem_after_bytes":180649704,"mem_before_bytes":180701208,"mem_retained_bytes":0},"phases":{"elaborate_ms":52,"parse_ms":0,"qtt_ms":36,"reduce_ms":242,"trait_resolve_ms":0,"type_check_ms":193,"zonk_ms":0},"status":"pass","tests":21,"wall_ms":2156},{"cell_metrics":{"cells":27,"propagators":0},"file":"test-session-ws-01.rkt","heartbeats":{"cell_allocs":283,"constraint_count":0,"constraint_retries":0,"elaborate_steps":17,"infer_steps":0,"meta_created":0,"meta_solved":0,"prop_allocs":0,"prop_firings":0,"reduce_steps":0,"resolution_cycles":0,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":0,"zonk_steps":0},"memory":{"gc_ms":101,"mem_after_bytes":207814672,"mem_before_bytes":207813080,"mem_retained_bytes":1592},"phases":{"elaborate_ms":4,"parse_ms":0,"qtt_ms":0,"reduce_ms":0,"trait_resolve_ms":0,"type_check_ms":0,"zonk_ms":0},"status":"pass","tests":13,"wall_ms":2827},{"cell_metrics":{"cells":41,"propagators":0},"file":"test-specialization.rkt","heartbeats":{"cell_allocs":366,"constraint_count":0,"constraint_retries":0,"elaborate_steps":54,"infer_steps":43,"meta_created":2,"meta_solved":1,"prop_allocs":0,"prop_firings":0,"reduce_steps":55,"resolution_cycles":1,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":30,"zonk_steps":62},"memory":{"gc_ms":77,"mem_after_bytes":180920688,"mem_before_bytes":180916280,"mem_retained_bytes":4408},"phases":{"elaborate_ms":17,"parse_ms":0,"qtt_ms":21,"reduce_ms":32,"trait_resolve_ms":0,"type_check_ms":25,"zonk_ms":0},"status":"pass","tests":9,"wall_ms":772},{"cell_metrics":{"cells":21,"propagators":0},"file":"test-set-ops-eval.rkt","heartbeats":{"cell_allocs":679,"constraint_count":0,"constraint_retries":0,"elaborate_steps":207,"infer_steps":262,"meta_created":10,"meta_solved":10,"prop_allocs":0,"prop_firings":0,"reduce_steps":166,"resolution_cycles":10,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":46,"zonk_steps":169},"memory":{"gc_ms":83,"mem_after_bytes":186447368,"mem_before_bytes":186449992,"mem_retained_bytes":0},"phases":{"elaborate_ms":127,"parse_ms":0,"qtt_ms":8,"reduce_ms":8,"trait_resolve_ms":0,"type_check_ms":217,"zonk_ms":1},"status":"pass","tests":13,"wall_ms":3021},{"file":"test-sre-core.rkt","status":"pass","tests":15,"wall_ms":148},{"file":"test-sre-duality.rkt","status":"pass","tests":17,"wall_ms":194},{"cell_metrics":{"cells":37,"propagators":0},"file":"test-session-runtime-03.rkt","heartbeats":{"cell_allocs":1341,"constraint_count":0,"constraint_retries":0,"elaborate_steps":44,"infer_steps":11,"meta_created":0,"meta_solved":0,"prop_allocs":0,"prop_firings":0,"reduce_steps":11,"resolution_cycles":0,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":0,"zonk_steps":0},"memory":{"gc_ms":90,"mem_after_bytes":224070856,"mem_before_bytes":224069032,"mem_retained_bytes":1824},"phases":{"elaborate_ms":10,"parse_ms":0,"qtt_ms":0,"reduce_ms":0,"trait_resolve_ms":0,"type_check_ms":10,"zonk_ms":0},"status":"pass","tests":17,"wall_ms":3769},{"file":"test-sre-subtype.rkt","status":"pass","tests":26,"wall_ms":176},{"cell_metrics":{"cells":19,"propagators":0},"file":"test-set.rkt","heartbeats":{"cell_allocs":416,"constraint_count":0,"constraint_retries":0,"elaborate_steps":155,"infer_steps":125,"meta_created":4,"meta_solved":3,"prop_allocs":0,"prop_firings":0,"reduce_steps":176,"resolution_cycles":3,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":14,"zonk_steps":161},"memory":{"gc_ms":66,"mem_after_bytes":169819752,"mem_before_bytes":169827224,"mem_retained_bytes":0},"phases":{"elaborate_ms":49,"parse_ms":0,"qtt_ms":5,"reduce_ms":53,"trait_resolve_ms":0,"type_check_ms":50,"zonk_ms":0},"status":"pass","tests":48,"wall_ms":3653},{"cell_metrics":{"cells":29,"propagators":0},"file":"test-spec-ordering.rkt","heartbeats":{"cell_allocs":629,"constraint_count":0,"constraint_retries":0,"elaborate_steps":215,"infer_steps":152,"meta_created":0,"meta_solved":0,"prop_allocs":0,"prop_firings":0,"reduce_steps":230,"resolution_cycles":0,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":108,"zonk_steps":234},"memory":{"gc_ms":69,"mem_after_bytes":160290304,"mem_before_bytes":160263520,"mem_retained_bytes":26784},"phases":{"elaborate_ms":86,"parse_ms":0,"qtt_ms":109,"reduce_ms":124,"trait_resolve_ms":0,"type_check_ms":162,"zonk_ms":0},"status":"pass","tests":10,"wall_ms":2048},{"cell_metrics":{"cells":37,"propagators":0},"file":"test-spec-mult-01.rkt","heartbeats":{"cell_allocs":438,"constraint_count":0,"constraint_retries":0,"elaborate_steps":112,"infer_steps":83,"meta_created":1,"meta_solved":1,"prop_allocs":0,"prop_firings":0,"reduce_steps":135,"resolution_cycles":1,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":43,"zonk_steps":122},"memory":{"gc_ms":84,"mem_after_bytes":206467528,"mem_before_bytes":206500416,"mem_retained_bytes":0},"phases":{"elaborate_ms":46,"parse_ms":0,"qtt_ms":15,"reduce_ms":72,"trait_resolve_ms":0,"type_check_ms":62,"zonk_ms":0},"status":"pass","tests":13,"wall_ms":3425},{"cell_metrics":{"cells":29,"propagators":0},"file":"test-spec.rkt","heartbeats":{"cell_allocs":960,"constraint_count":0,"constraint_retries":0,"elaborate_steps":351,"infer_steps":228,"meta_created":1,"meta_solved":1,"prop_allocs":0,"prop_firings":0,"reduce_steps":363,"resolution_cycles":1,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":166,"zonk_steps":376},"memory":{"gc_ms":75,"mem_after_bytes":183742872,"mem_before_bytes":183745440,"mem_retained_bytes":0},"phases":{"elaborate_ms":140,"parse_ms":0,"qtt_ms":141,"reduce_ms":160,"trait_resolve_ms":0,"type_check_ms":257,"zonk_ms":0},"status":"pass","tests":33,"wall_ms":4262},{"cell_metrics":{"cells":27,"propagators":3},"file":"test-reducible-02.rkt","heartbeats":{"cell_allocs":621,"constraint_count":0,"constraint_retries":0,"elaborate_steps":216,"infer_steps":560,"meta_created":89,"meta_solved":89,"prop_allocs":0,"prop_firings":0,"reduce_steps":1894,"resolution_cycles":87,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":193,"zonk_steps":690},"memory":{"gc_ms":93,"mem_after_bytes":216351568,"mem_before_bytes":216343504,"mem_retained_bytes":8064},"phases":{"elaborate_ms":592,"parse_ms":0,"qtt_ms":3,"reduce_ms":12533,"trait_resolve_ms":0,"type_check_ms":1101,"zonk_ms":1},"status":"pass","tests":14,"wall_ms":17237},{"file":"test-speculation-bridge.rkt","status":"pass","tests":27,"wall_ms":4655},{"cell_metrics":{"cells":19,"propagators":0},"file":"test-sign-galois.rkt","heartbeats":{"cell_allocs":350,"constraint_count":0,"constraint_retries":0,"elaborate_steps":81,"infer_steps":293,"meta_created":46,"meta_solved":46,"prop_allocs":0,"prop_firings":0,"reduce_steps":992,"resolution_cycles":46,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":150,"zonk_steps":392},"memory":{"gc_ms":84,"mem_after_bytes":186270520,"mem_before_bytes":185643840,"mem_retained_bytes":626680},"phases":{"elaborate_ms":234,"parse_ms":0,"qtt_ms":0,"reduce_ms":1236,"trait_resolve_ms":0,"type_check_ms":737,"zonk_ms":0},"status":"pass","tests":19,"wall_ms":8221},{"cell_metrics":{"cells":45,"propagators":0},"file":"test-sprint10.rkt","heartbeats":{"cell_allocs":1495,"constraint_count":0,"constraint_retries":0,"elaborate_steps":369,"infer_steps":337,"meta_created":11,"meta_solved":10,"prop_allocs":0,"prop_firings":0,"reduce_steps":492,"resolution_cycles":10,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":139,"zonk_steps":389},"memory":{"gc_ms":75,"mem_after_bytes":181371992,"mem_before_bytes":181387168,"mem_retained_bytes":0},"phases":{"elaborate_ms":115,"parse_ms":0,"qtt_ms":85,"reduce_ms":288,"trait_resolve_ms":0,"type_check_ms":227,"zonk_ms":0},"status":"pass","tests":35,"wall_ms":6980},{"cell_metrics":{"cells":50,"propagators":0},"file":"test-stdlib-02-traits-01.rkt","heartbeats":{"cell_allocs":1550,"constraint_count":0,"constraint_retries":0,"elaborate_steps":334,"infer_steps":432,"meta_created":0,"meta_solved":0,"prop_allocs":0,"prop_firings":0,"reduce_steps":510,"resolution_cycles":0,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":94,"zonk_steps":401},"memory":{"gc_ms":93,"mem_after_bytes":206790920,"mem_before_bytes":206745616,"mem_retained_bytes":45304},"phases":{"elaborate_ms":111,"parse_ms":0,"qtt_ms":0,"reduce_ms":341,"trait_resolve_ms":0,"type_check_ms":438,"zonk_ms":0},"status":"pass","tests":19,"wall_ms":6251},{"cell_metrics":{"cells":17,"propagators":0},"file":"test-stdlib-01-data-01.rkt","heartbeats":{"cell_allocs":528,"constraint_count":0,"constraint_retries":0,"elaborate_steps":124,"infer_steps":175,"meta_created":0,"meta_solved":0,"prop_allocs":0,"prop_firings":0,"reduce_steps":509,"resolution_cycles":0,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":34,"zonk_steps":168},"memory":{"gc_ms":95,"mem_after_bytes":224518032,"mem_before_bytes":224524968,"mem_retained_bytes":0},"phases":{"elaborate_ms":34,"parse_ms":0,"qtt_ms":0,"reduce_ms":449,"trait_resolve_ms":0,"type_check_ms":120,"zonk_ms":0},"status":"pass","tests":14,"wall_ms":8310},{"cell_metrics":{"cells":18,"propagators":0},"file":"test-stdlib-01-data-03.rkt","heartbeats":{"cell_allocs":580,"constraint_count":0,"constraint_retries":0,"elaborate_steps":225,"infer_steps":260,"meta_created":0,"meta_solved":0,"prop_allocs":0,"prop_firings":0,"reduce_steps":1114,"resolution_cycles":0,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":60,"zonk_steps":232},"memory":{"gc_ms":75,"mem_after_bytes":170337016,"mem_before_bytes":170357696,"mem_retained_bytes":0},"phases":{"elaborate_ms":84,"parse_ms":0,"qtt_ms":0,"reduce_ms":1385,"trait_resolve_ms":0,"type_check_ms":296,"zonk_ms":0},"status":"pass","tests":14,"wall_ms":8135},{"cell_metrics":{"cells":21,"propagators":0},"file":"test-stdlib-01-data-02.rkt","heartbeats":{"cell_allocs":799,"constraint_count":0,"constraint_retries":0,"elaborate_steps":266,"infer_steps":250,"meta_created":8,"meta_solved":8,"prop_allocs":0,"prop_firings":0,"reduce_steps":1456,"resolution_cycles":8,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":34,"zonk_steps":276},"memory":{"gc_ms":79,"mem_after_bytes":188064256,"mem_before_bytes":187998400,"mem_retained_bytes":65856},"phases":{"elaborate_ms":109,"parse_ms":0,"qtt_ms":4,"reduce_ms":1637,"trait_resolve_ms":0,"type_check_ms":215,"zonk_ms":0},"status":"pass","tests":14,"wall_ms":8420},{"cell_metrics":{"cells":17,"propagators":0},"file":"test-stdlib-02-traits-02.rkt","heartbeats":{"cell_allocs":310,"constraint_count":0,"constraint_retries":0,"elaborate_steps":351,"infer_steps":550,"meta_created":0,"meta_solved":0,"prop_allocs":0,"prop_firings":0,"reduce_steps":818,"resolution_cycles":0,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":157,"zonk_steps":416},"memory":{"gc_ms":73,"mem_after_bytes":184056176,"mem_before_bytes":184066072,"mem_retained_bytes":0},"phases":{"elaborate_ms":130,"parse_ms":0,"qtt_ms":0,"reduce_ms":1380,"trait_resolve_ms":0,"type_check_ms":896,"zonk_ms":0},"status":"pass","tests":19,"wall_ms":6010},{"cell_metrics":{"cells":17,"propagators":0},"file":"test-stdlib-02-traits-04.rkt","heartbeats":{"cell_allocs":304,"constraint_count":0,"constraint_retries":0,"elaborate_steps":200,"infer_steps":172,"meta_created":0,"meta_solved":0,"prop_allocs":0,"prop_firings":0,"reduce_steps":1185,"resolution_cycles":0,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":27,"zonk_steps":158},"memory":{"gc_ms":91,"mem_after_bytes":208797888,"mem_before_bytes":208777672,"mem_retained_bytes":20216},"phases":{"elaborate_ms":64,"parse_ms":0,"qtt_ms":0,"reduce_ms":1339,"trait_resolve_ms":0,"type_check_ms":180,"zonk_ms":0},"status":"pass","tests":19,"wall_ms":5606},{"cell_metrics":{"cells":41,"propagators":0},"file":"test-stdlib-01-data-04.rkt","heartbeats":{"cell_allocs":1326,"constraint_count":0,"constraint_retries":0,"elaborate_steps":527,"infer_steps":744,"meta_created":0,"meta_solved":0,"prop_allocs":0,"prop_firings":0,"reduce_steps":1062,"resolution_cycles":0,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":198,"zonk_steps":554},"memory":{"gc_ms":69,"mem_after_bytes":160890248,"mem_before_bytes":160872464,"mem_retained_bytes":17784},"phases":{"elaborate_ms":187,"parse_ms":0,"qtt_ms":0,"reduce_ms":1288,"trait_resolve_ms":0,"type_check_ms":1043,"zonk_ms":1},"status":"pass","tests":23,"wall_ms":9859},{"cell_metrics":{"cells":50,"propagators":0},"file":"test-stdlib-02-traits-03.rkt","heartbeats":{"cell_allocs":1890,"constraint_count":0,"constraint_retries":0,"elaborate_steps":425,"infer_steps":719,"meta_created":0,"meta_solved":0,"prop_allocs":0,"prop_firings":0,"reduce_steps":1144,"resolution_cycles":0,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":198,"zonk_steps":543},"memory":{"gc_ms":91,"mem_after_bytes":216728368,"mem_before_bytes":216725112,"mem_retained_bytes":3256},"phases":{"elaborate_ms":135,"parse_ms":0,"qtt_ms":18,"reduce_ms":1958,"trait_resolve_ms":0,"type_check_ms":685,"zonk_ms":0},"status":"pass","tests":19,"wall_ms":7697},{"cell_metrics":{"cells":17,"propagators":0},"file":"test-stdlib-02-traits-05.rkt","heartbeats":{"cell_allocs":320,"constraint_count":0,"constraint_retries":0,"elaborate_steps":273,"infer_steps":336,"meta_created":0,"meta_solved":0,"prop_allocs":0,"prop_firings":0,"reduce_steps":2023,"resolution_cycles":0,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":74,"zonk_steps":282},"memory":{"gc_ms":80,"mem_after_bytes":185186880,"mem_before_bytes":185152424,"mem_retained_bytes":34456},"phases":{"elaborate_ms":78,"parse_ms":0,"qtt_ms":0,"reduce_ms":2445,"trait_resolve_ms":0,"type_check_ms":409,"zonk_ms":0},"status":"pass","tests":16,"wall_ms":6611},{"cell_metrics":{"cells":17,"propagators":0},"file":"test-strategy-01.rkt","heartbeats":{"cell_allocs":96,"constraint_count":0,"constraint_retries":0,"elaborate_steps":0,"infer_steps":0,"meta_created":0,"meta_solved":0,"prop_allocs":0,"prop_firings":0,"reduce_steps":0,"resolution_cycles":0,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":0,"zonk_steps":0},"memory":{"gc_ms":97,"mem_after_bytes":216929176,"mem_before_bytes":216910672,"mem_retained_bytes":18504},"phases":{"elaborate_ms":0,"parse_ms":0,"qtt_ms":0,"reduce_ms":0,"trait_resolve_ms":0,"type_check_ms":0,"zonk_ms":0},"status":"pass","tests":14,"wall_ms":1198},{"cell_metrics":{"cells":30,"propagators":0},"file":"test-stdlib-02-traits-06.rkt","heartbeats":{"cell_allocs":606,"constraint_count":0,"constraint_retries":0,"elaborate_steps":312,"infer_steps":390,"meta_created":0,"meta_solved":0,"prop_allocs":0,"prop_firings":0,"reduce_steps":1011,"resolution_cycles":0,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":146,"zonk_steps":327},"memory":{"gc_ms":90,"mem_after_bytes":181605280,"mem_before_bytes":181650184,"mem_retained_bytes":0},"phases":{"elaborate_ms":86,"parse_ms":0,"qtt_ms":61,"reduce_ms":1961,"trait_resolve_ms":0,"type_check_ms":370,"zonk_ms":0},"status":"pass","tests":19,"wall_ms":6069},{"file":"test-stratify.rkt","status":"pass","tests":10,"wall_ms":97},{"cell_metrics":{"cells":17,"propagators":0},"file":"test-strategy-ws-01.rkt","heartbeats":{"cell_allocs":112,"constraint_count":0,"constraint_retries":0,"elaborate_steps":0,"infer_steps":0,"meta_created":0,"meta_solved":0,"prop_allocs":0,"prop_firings":0,"reduce_steps":0,"resolution_cycles":0,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":0,"zonk_steps":0},"memory":{"gc_ms":86,"mem_after_bytes":185289832,"mem_before_bytes":185290168,"mem_retained_bytes":0},"phases":{"elaborate_ms":0,"parse_ms":0,"qtt_ms":0,"reduce_ms":0,"trait_resolve_ms":0,"type_check_ms":0,"zonk_ms":0},"status":"pass","tests":7,"wall_ms":1964},{"cell_metrics":{"cells":29,"propagators":0},"file":"test-stratified-eval.rkt","heartbeats":{"cell_allocs":258,"constraint_count":0,"constraint_retries":0,"elaborate_steps":71,"infer_steps":87,"meta_created":0,"meta_solved":0,"prop_allocs":0,"prop_firings":0,"reduce_steps":46,"resolution_cycles":0,"solver_backtracks":16,"solver_unifies":47,"trait_resolve_steps":0,"unify_steps":0,"zonk_steps":89},"memory":{"gc_ms":116,"mem_after_bytes":217432808,"mem_before_bytes":217374472,"mem_retained_bytes":58336},"phases":{"elaborate_ms":31,"parse_ms":0,"qtt_ms":0,"reduce_ms":100,"trait_resolve_ms":0,"type_check_ms":37,"zonk_ms":0},"status":"pass","tests":18,"wall_ms":2005},{"file":"test-structural-decomp.rkt","status":"pass","tests":43,"wall_ms":747},{"file":"test-substitution.rkt","status":"pass","tests":38,"wall_ms":520},{"file":"test-support.rkt","status":"pass","tests":0,"wall_ms":0},{"cell_metrics":{"cells":17,"propagators":0},"file":"test-stdlib-03-list-01.rkt","heartbeats":{"cell_allocs":288,"constraint_count":0,"constraint_retries":0,"elaborate_steps":226,"infer_steps":474,"meta_created":0,"meta_solved":0,"prop_allocs":0,"prop_firings":0,"reduce_steps":1021,"resolution_cycles":0,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":132,"zonk_steps":360},"memory":{"gc_ms":106,"mem_after_bytes":224730776,"mem_before_bytes":224706512,"mem_retained_bytes":24264},"phases":{"elaborate_ms":129,"parse_ms":0,"qtt_ms":0,"reduce_ms":2415,"trait_resolve_ms":0,"type_check_ms":697,"zonk_ms":0},"status":"pass","tests":18,"wall_ms":8289},{"cell_metrics":{"cells":47,"propagators":0},"file":"test-stdlib-03-list-05.rkt","heartbeats":{"cell_allocs":700,"constraint_count":0,"constraint_retries":0,"elaborate_steps":135,"infer_steps":135,"meta_created":0,"meta_solved":0,"prop_allocs":0,"prop_firings":0,"reduce_steps":526,"resolution_cycles":0,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":46,"zonk_steps":132},"memory":{"gc_ms":79,"mem_after_bytes":161032840,"mem_before_bytes":161085352,"mem_retained_bytes":0},"phases":{"elaborate_ms":48,"parse_ms":0,"qtt_ms":17,"reduce_ms":1440,"trait_resolve_ms":0,"type_check_ms":106,"zonk_ms":0},"status":"pass","tests":15,"wall_ms":6238},{"cell_metrics":{"cells":17,"propagators":0},"file":"test-stdlib-03-list-04-01.rkt","heartbeats":{"cell_allocs":160,"constraint_count":0,"constraint_retries":0,"elaborate_steps":234,"infer_steps":402,"meta_created":0,"meta_solved":0,"prop_allocs":0,"prop_firings":0,"reduce_steps":978,"resolution_cycles":0,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":102,"zonk_steps":310},"memory":{"gc_ms":102,"mem_after_bytes":184169048,"mem_before_bytes":184184664,"mem_retained_bytes":0},"phases":{"elaborate_ms":126,"parse_ms":0,"qtt_ms":0,"reduce_ms":5079,"trait_resolve_ms":0,"type_check_ms":844,"zonk_ms":0},"status":"pass","tests":10,"wall_ms":8307},{"cell_metrics":{"cells":17,"propagators":0},"file":"test-stdlib-03-list-02.rkt","heartbeats":{"cell_allocs":290,"constraint_count":0,"constraint_retries":0,"elaborate_steps":287,"infer_steps":529,"meta_created":0,"meta_solved":0,"prop_allocs":0,"prop_firings":0,"reduce_steps":1399,"resolution_cycles":0,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":145,"zonk_steps":406},"memory":{"gc_ms":74,"mem_after_bytes":170529760,"mem_before_bytes":170570728,"mem_retained_bytes":0},"phases":{"elaborate_ms":93,"parse_ms":0,"qtt_ms":0,"reduce_ms":5259,"trait_resolve_ms":0,"type_check_ms":662,"zonk_ms":0},"status":"pass","tests":18,"wall_ms":9596},{"cell_metrics":{"cells":25,"propagators":0},"file":"test-subtyping.rkt","heartbeats":{"cell_allocs":374,"constraint_count":0,"constraint_retries":0,"elaborate_steps":44,"infer_steps":34,"meta_created":0,"meta_solved":0,"prop_allocs":0,"prop_firings":0,"reduce_steps":48,"resolution_cycles":0,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":15,"zonk_steps":36},"memory":{"gc_ms":92,"mem_after_bytes":186898344,"mem_before_bytes":186898984,"mem_retained_bytes":0},"phases":{"elaborate_ms":17,"parse_ms":0,"qtt_ms":7,"reduce_ms":22,"trait_resolve_ms":0,"type_check_ms":29,"zonk_ms":0},"status":"pass","tests":44,"wall_ms":3602},{"file":"test-syntax.rkt","status":"pass","tests":20,"wall_ms":301},{"file":"test-tabling-types.rkt","status":"pass","tests":31,"wall_ms":351},{"cell_metrics":{"cells":25,"propagators":0},"file":"test-syntax-verify.rkt","heartbeats":{"cell_allocs":148,"constraint_count":0,"constraint_retries":0,"elaborate_steps":35,"infer_steps":73,"meta_created":11,"meta_solved":11,"prop_allocs":0,"prop_firings":0,"reduce_steps":103,"resolution_cycles":11,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":22,"zonk_steps":104},"memory":{"gc_ms":85,"mem_after_bytes":184309808,"mem_before_bytes":184325752,"mem_retained_bytes":0},"phases":{"elaborate_ms":45,"parse_ms":0,"qtt_ms":1,"reduce_ms":43,"trait_resolve_ms":0,"type_check_ms":132,"zonk_ms":0},"status":"pass","tests":5,"wall_ms":1563},{"file":"test-tabling.rkt","status":"pass","tests":20,"wall_ms":225},{"file":"test-term-lattice-01.rkt","status":"pass","tests":49,"wall_ms":474},{"cell_metrics":{"cells":18,"propagators":0},"file":"test-surface-defmacro-01.rkt","heartbeats":{"cell_allocs":227,"constraint_count":0,"constraint_retries":0,"elaborate_steps":109,"infer_steps":102,"meta_created":3,"meta_solved":3,"prop_allocs":0,"prop_firings":0,"reduce_steps":141,"resolution_cycles":3,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":24,"zonk_steps":110},"memory":{"gc_ms":100,"mem_after_bytes":217996416,"mem_before_bytes":218004936,"mem_retained_bytes":0},"phases":{"elaborate_ms":60,"parse_ms":0,"qtt_ms":0,"reduce_ms":116,"trait_resolve_ms":0,"type_check_ms":113,"zonk_ms":0},"status":"pass","tests":14,"wall_ms":4740},{"file":"test-trace-data.rkt","status":"pass","tests":16,"wall_ms":263},{"file":"test-tms-cell.rkt","status":"pass","tests":34,"wall_ms":401},{"file":"test-trace-serialize.rkt","status":"pass","tests":19,"wall_ms":296},{"cell_metrics":{"cells":17,"propagators":0},"file":"test-termination-01.rkt","heartbeats":{"cell_allocs":64,"constraint_count":0,"constraint_retries":0,"elaborate_steps":18,"infer_steps":18,"meta_created":0,"meta_solved":0,"prop_allocs":0,"prop_firings":0,"reduce_steps":38,"resolution_cycles":0,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":0,"zonk_steps":22},"memory":{"gc_ms":69,"mem_after_bytes":172479744,"mem_before_bytes":172483280,"mem_retained_bytes":0},"phases":{"elaborate_ms":7,"parse_ms":0,"qtt_ms":0,"reduce_ms":29,"trait_resolve_ms":0,"type_check_ms":6,"zonk_ms":0},"status":"pass","tests":45,"wall_ms":1342},{"cell_metrics":{"cells":21,"propagators":0},"file":"test-trait-impl-01.rkt","heartbeats":{"cell_allocs":81,"constraint_count":0,"constraint_retries":0,"elaborate_steps":37,"infer_steps":29,"meta_created":0,"meta_solved":0,"prop_allocs":0,"prop_firings":0,"reduce_steps":31,"resolution_cycles":0,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":16,"zonk_steps":39},"memory":{"gc_ms":82,"mem_after_bytes":188283856,"mem_before_bytes":188302392,"mem_retained_bytes":0},"phases":{"elaborate_ms":13,"parse_ms":0,"qtt_ms":11,"reduce_ms":9,"trait_resolve_ms":0,"type_check_ms":18,"zonk_ms":0},"status":"pass","tests":16,"wall_ms":687},{"cell_metrics":{"cells":20,"propagators":0},"file":"test-stdlib-02-traits-07.rkt","heartbeats":{"cell_allocs":424,"constraint_count":0,"constraint_retries":0,"elaborate_steps":297,"infer_steps":652,"meta_created":7,"meta_solved":7,"prop_allocs":0,"prop_firings":0,"reduce_steps":1421,"resolution_cycles":7,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":199,"zonk_steps":518},"memory":{"gc_ms":97,"mem_after_bytes":207046504,"mem_before_bytes":207040528,"mem_retained_bytes":5976},"phases":{"elaborate_ms":149,"parse_ms":0,"qtt_ms":25,"reduce_ms":4873,"trait_resolve_ms":0,"type_check_ms":1090,"zonk_ms":0},"status":"pass","tests":22,"wall_ms":12524},{"cell_metrics":{"cells":14,"propagators":0},"file":"test-tabling-integration.rkt","heartbeats":{"cell_allocs":129,"constraint_count":0,"constraint_retries":0,"elaborate_steps":32,"infer_steps":43,"meta_created":0,"meta_solved":0,"prop_allocs":0,"prop_firings":0,"reduce_steps":40,"resolution_cycles":0,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":13,"zonk_steps":23},"memory":{"gc_ms":79,"mem_after_bytes":187130944,"mem_before_bytes":187131328,"mem_retained_bytes":0},"phases":{"elaborate_ms":11,"parse_ms":0,"qtt_ms":0,"reduce_ms":10,"trait_resolve_ms":0,"type_check_ms":32,"zonk_ms":0},"status":"pass","tests":12,"wall_ms":2569},{"cell_metrics":{"cells":19,"propagators":0},"file":"test-surface-defmacro-02.rkt","heartbeats":{"cell_allocs":255,"constraint_count":0,"constraint_retries":0,"elaborate_steps":105,"infer_steps":108,"meta_created":5,"meta_solved":5,"prop_allocs":0,"prop_firings":0,"reduce_steps":151,"resolution_cycles":5,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":34,"zonk_steps":100},"memory":{"gc_ms":101,"mem_after_bytes":224899256,"mem_before_bytes":224893120,"mem_retained_bytes":6136},"phases":{"elaborate_ms":44,"parse_ms":0,"qtt_ms":0,"reduce_ms":78,"trait_resolve_ms":0,"type_check_ms":126,"zonk_ms":0},"status":"pass","tests":16,"wall_ms":4376},{"cell_metrics":{"cells":17,"propagators":0},"file":"test-stdlib-03-list-03.rkt","heartbeats":{"cell_allocs":288,"constraint_count":0,"constraint_retries":0,"elaborate_steps":391,"infer_steps":774,"meta_created":0,"meta_solved":0,"prop_allocs":0,"prop_firings":0,"reduce_steps":2015,"resolution_cycles":0,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":210,"zonk_steps":582},"memory":{"gc_ms":94,"mem_after_bytes":188268960,"mem_before_bytes":188269336,"mem_retained_bytes":0},"phases":{"elaborate_ms":145,"parse_ms":0,"qtt_ms":0,"reduce_ms":8039,"trait_resolve_ms":0,"type_check_ms":1344,"zonk_ms":0},"status":"pass","tests":18,"wall_ms":13643},{"file":"test-trait-resolution-bridge.rkt","status":"pass","tests":10,"wall_ms":123},{"cell_metrics":{"cells":26,"propagators":0},"file":"test-trait-impl-03.rkt","heartbeats":{"cell_allocs":335,"constraint_count":0,"constraint_retries":0,"elaborate_steps":114,"infer_steps":98,"meta_created":0,"meta_solved":0,"prop_allocs":0,"prop_firings":0,"reduce_steps":494,"resolution_cycles":0,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":32,"zonk_steps":118},"memory":{"gc_ms":76,"mem_after_bytes":172881960,"mem_before_bytes":172822552,"mem_retained_bytes":59408},"phases":{"elaborate_ms":40,"parse_ms":0,"qtt_ms":17,"reduce_ms":534,"trait_resolve_ms":0,"type_check_ms":102,"zonk_ms":0},"status":"pass","tests":16,"wall_ms":2345},{"cell_metrics":{"cells":17,"propagators":0},"file":"test-stdlib-03-list-04-02.rkt","heartbeats":{"cell_allocs":128,"constraint_count":0,"constraint_retries":0,"elaborate_steps":145,"infer_steps":289,"meta_created":0,"meta_solved":0,"prop_allocs":0,"prop_firings":0,"reduce_steps":1422,"resolution_cycles":0,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":81,"zonk_steps":216},"memory":{"gc_ms":159,"mem_after_bytes":208888096,"mem_before_bytes":208911392,"mem_retained_bytes":0},"phases":{"elaborate_ms":51,"parse_ms":0,"qtt_ms":0,"reduce_ms":11204,"trait_resolve_ms":0,"type_check_ms":377,"zonk_ms":0},"status":"pass","tests":8,"wall_ms":13591},{"cell_metrics":{"cells":17,"propagators":0},"file":"test-trait-narrowing-01.rkt","heartbeats":{"cell_allocs":112,"constraint_count":0,"constraint_retries":0,"elaborate_steps":34,"infer_steps":34,"meta_created":0,"meta_solved":0,"prop_allocs":0,"prop_firings":0,"reduce_steps":101,"resolution_cycles":0,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":0,"zonk_steps":41},"memory":{"gc_ms":94,"mem_after_bytes":225193784,"mem_before_bytes":225194728,"mem_retained_bytes":0},"phases":{"elaborate_ms":19,"parse_ms":0,"qtt_ms":0,"reduce_ms":62,"trait_resolve_ms":0,"type_check_ms":11,"zonk_ms":0},"status":"pass","tests":7,"wall_ms":2068},{"cell_metrics":{"cells":17,"propagators":0},"file":"test-trait-introspection-01.rkt","heartbeats":{"cell_allocs":208,"constraint_count":0,"constraint_retries":0,"elaborate_steps":0,"infer_steps":0,"meta_created":0,"meta_solved":0,"prop_allocs":0,"prop_firings":0,"reduce_steps":0,"resolution_cycles":0,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":0,"zonk_steps":0},"memory":{"gc_ms":85,"mem_after_bytes":187483736,"mem_before_bytes":187484040,"mem_retained_bytes":0},"phases":{"elaborate_ms":0,"parse_ms":0,"qtt_ms":0,"reduce_ms":0,"trait_resolve_ms":0,"type_check_ms":0,"zonk_ms":0},"status":"pass","tests":17,"wall_ms":2787},{"cell_metrics":{"cells":28,"propagators":3},"file":"test-trait-tycon-01.rkt","heartbeats":{"cell_allocs":176,"constraint_count":0,"constraint_retries":0,"elaborate_steps":135,"infer_steps":73,"meta_created":9,"meta_solved":6,"prop_allocs":0,"prop_firings":0,"reduce_steps":154,"resolution_cycles":6,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":45,"zonk_steps":185},"memory":{"gc_ms":93,"mem_after_bytes":209321680,"mem_before_bytes":209339208,"mem_retained_bytes":0},"phases":{"elaborate_ms":90,"parse_ms":0,"qtt_ms":28,"reduce_ms":71,"trait_resolve_ms":0,"type_check_ms":168,"zonk_ms":0},"status":"pass","tests":15,"wall_ms":1603},{"cell_metrics":{"cells":20,"propagators":0},"file":"test-trait-impl-02.rkt","heartbeats":{"cell_allocs":210,"constraint_count":0,"constraint_retries":0,"elaborate_steps":67,"infer_steps":171,"meta_created":17,"meta_solved":17,"prop_allocs":0,"prop_firings":0,"reduce_steps":338,"resolution_cycles":17,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":64,"zonk_steps":181},"memory":{"gc_ms":95,"mem_after_bytes":219066880,"mem_before_bytes":219118472,"mem_retained_bytes":0},"phases":{"elaborate_ms":78,"parse_ms":0,"qtt_ms":0,"reduce_ms":286,"trait_resolve_ms":0,"type_check_ms":258,"zonk_ms":0},"status":"pass","tests":16,"wall_ms":5179},{"cell_metrics":{"cells":22,"propagators":3},"file":"test-trait-resolution.rkt","heartbeats":{"cell_allocs":440,"constraint_count":0,"constraint_retries":0,"elaborate_steps":286,"infer_steps":276,"meta_created":16,"meta_solved":14,"prop_allocs":0,"prop_firings":0,"reduce_steps":549,"resolution_cycles":16,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":170,"zonk_steps":430},"memory":{"gc_ms":71,"mem_after_bytes":173563360,"mem_before_bytes":173537536,"mem_retained_bytes":25824},"phases":{"elaborate_ms":128,"parse_ms":0,"qtt_ms":165,"reduce_ms":366,"trait_resolve_ms":0,"type_check_ms":320,"zonk_ms":1},"status":"pass","tests":22,"wall_ms":2927},{"file":"test-tycon.rkt","status":"pass","tests":30,"wall_ms":427},{"cell_metrics":{"cells":20,"propagators":0},"file":"test-trait-impl-04-01.rkt","heartbeats":{"cell_allocs":243,"constraint_count":0,"constraint_retries":0,"elaborate_steps":154,"infer_steps":325,"meta_created":15,"meta_solved":10,"prop_allocs":0,"prop_firings":0,"reduce_steps":698,"resolution_cycles":10,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":136,"zonk_steps":369},"memory":{"gc_ms":85,"mem_after_bytes":188520976,"mem_before_bytes":188517752,"mem_retained_bytes":3224},"phases":{"elaborate_ms":235,"parse_ms":0,"qtt_ms":0,"reduce_ms":1134,"trait_resolve_ms":0,"type_check_ms":905,"zonk_ms":0},"status":"pass","tests":14,"wall_ms":5186},{"file":"test-typing-sessions.rkt","status":"pass","tests":10,"wall_ms":102},{"file":"test-type-lattice.rkt","status":"pass","tests":35,"wall_ms":287},{"file":"test-typing.rkt","status":"pass","tests":38,"wall_ms":354},{"cell_metrics":{"cells":17,"propagators":0},"file":"test-trait-resolution-propagator.rkt","heartbeats":{"cell_allocs":352,"constraint_count":0,"constraint_retries":0,"elaborate_steps":54,"infer_steps":80,"meta_created":0,"meta_solved":0,"prop_allocs":0,"prop_firings":0,"reduce_steps":1553,"resolution_cycles":0,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":5,"zonk_steps":86},"memory":{"gc_ms":77,"mem_after_bytes":189375608,"mem_before_bytes":188876648,"mem_retained_bytes":498960},"phases":{"elaborate_ms":15,"parse_ms":0,"qtt_ms":0,"reduce_ms":1933,"trait_resolve_ms":0,"type_check_ms":66,"zonk_ms":0},"status":"pass","tests":11,"wall_ms":4406},{"cell_metrics":{"cells":18,"propagators":0},"file":"test-transient.rkt","heartbeats":{"cell_allocs":161,"constraint_count":0,"constraint_retries":0,"elaborate_steps":91,"infer_steps":87,"meta_created":0,"meta_solved":0,"prop_allocs":0,"prop_firings":0,"reduce_steps":134,"resolution_cycles":0,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":5,"zonk_steps":85},"memory":{"gc_ms":86,"mem_after_bytes":209898000,"mem_before_bytes":209904840,"mem_retained_bytes":0},"phases":{"elaborate_ms":32,"parse_ms":0,"qtt_ms":0,"reduce_ms":39,"trait_resolve_ms":0,"type_check_ms":37,"zonk_ms":0},"status":"pass","tests":38,"wall_ms":2353},{"file":"test-unify-structural.rkt","status":"pass","tests":35,"wall_ms":373},{"file":"test-unify.rkt","status":"pass","tests":50,"wall_ms":601},{"cell_metrics":{"cells":19,"propagators":0},"file":"test-unify-propagator.rkt","heartbeats":{"cell_allocs":159,"constraint_count":0,"constraint_retries":0,"elaborate_steps":34,"infer_steps":34,"meta_created":0,"meta_solved":0,"prop_allocs":0,"prop_firings":0,"reduce_steps":128,"resolution_cycles":0,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":4,"zonk_steps":38},"memory":{"gc_ms":78,"mem_after_bytes":189788848,"mem_before_bytes":189120248,"mem_retained_bytes":668600},"phases":{"elaborate_ms":11,"parse_ms":0,"qtt_ms":2,"reduce_ms":163,"trait_resolve_ms":0,"type_check_ms":30,"zonk_ms":0},"status":"pass","tests":14,"wall_ms":1723},{"file":"test-unify-cell-driven.rkt","status":"pass","tests":13,"wall_ms":2548},{"file":"test-union-find-types.rkt","status":"pass","tests":29,"wall_ms":182},{"cell_metrics":{"cells":18,"propagators":0},"file":"test-type-syntax-refactor.rkt","heartbeats":{"cell_allocs":246,"constraint_count":0,"constraint_retries":0,"elaborate_steps":61,"infer_steps":45,"meta_created":0,"meta_solved":0,"prop_allocs":0,"prop_firings":0,"reduce_steps":24,"resolution_cycles":0,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":8,"zonk_steps":10},"memory":{"gc_ms":86,"mem_after_bytes":220532688,"mem_before_bytes":220534064,"mem_retained_bytes":0},"phases":{"elaborate_ms":13,"parse_ms":0,"qtt_ms":0,"reduce_ms":0,"trait_resolve_ms":0,"type_check_ms":26,"zonk_ms":0},"status":"pass","tests":37,"wall_ms":3218},{"file":"test-union-find.rkt","status":"pass","tests":19,"wall_ms":140},{"cell_metrics":{"cells":18,"propagators":0},"file":"test-union-find-integration-01.rkt","heartbeats":{"cell_allocs":132,"constraint_count":0,"constraint_retries":0,"elaborate_steps":26,"infer_steps":31,"meta_created":0,"meta_solved":0,"prop_allocs":0,"prop_firings":0,"reduce_steps":34,"resolution_cycles":0,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":11,"zonk_steps":26},"memory":{"gc_ms":82,"mem_after_bytes":211524984,"mem_before_bytes":211530600,"mem_retained_bytes":0},"phases":{"elaborate_ms":6,"parse_ms":0,"qtt_ms":3,"reduce_ms":7,"trait_resolve_ms":0,"type_check_ms":11,"zonk_ms":0},"status":"pass","tests":6,"wall_ms":1150},{"cell_metrics":{"cells":20,"propagators":0},"file":"test-trait-impl-04-02.rkt","heartbeats":{"cell_allocs":171,"constraint_count":0,"constraint_retries":0,"elaborate_steps":119,"infer_steps":308,"meta_created":27,"meta_solved":18,"prop_allocs":0,"prop_firings":0,"reduce_steps":1727,"resolution_cycles":18,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":159,"zonk_steps":318},"memory":{"gc_ms":114,"mem_after_bytes":207170536,"mem_before_bytes":207185768,"mem_retained_bytes":0},"phases":{"elaborate_ms":387,"parse_ms":0,"qtt_ms":0,"reduce_ms":5119,"trait_resolve_ms":0,"type_check_ms":1186,"zonk_ms":0},"status":"pass","tests":9,"wall_ms":8758},{"cell_metrics":{"cells":18,"propagators":0},"file":"test-union-types.rkt","heartbeats":{"cell_allocs":97,"constraint_count":0,"constraint_retries":0,"elaborate_steps":26,"infer_steps":21,"meta_created":0,"meta_solved":0,"prop_allocs":0,"prop_firings":0,"reduce_steps":14,"resolution_cycles":0,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":4,"zonk_steps":5},"memory":{"gc_ms":91,"mem_after_bytes":221146192,"mem_before_bytes":221148488,"mem_retained_bytes":0},"phases":{"elaborate_ms":7,"parse_ms":0,"qtt_ms":0,"reduce_ms":0,"trait_resolve_ms":0,"type_check_ms":8,"zonk_ms":0},"status":"pass","tests":33,"wall_ms":1369},{"file":"test-wf-benchmark-01.rkt","status":"pass","tests":10,"wall_ms":117},{"file":"test-wf-comparison-01.rkt","status":"pass","tests":10,"wall_ms":106},{"cell_metrics":{"cells":42,"propagators":0},"file":"test-surface-integration.rkt","heartbeats":{"cell_allocs":3085,"constraint_count":0,"constraint_retries":0,"elaborate_steps":815,"infer_steps":621,"meta_created":0,"meta_solved":0,"prop_allocs":0,"prop_firings":0,"reduce_steps":670,"resolution_cycles":0,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":285,"zonk_steps":685},"memory":{"gc_ms":65,"mem_after_bytes":162238080,"mem_before_bytes":162249480,"mem_retained_bytes":0},"phases":{"elaborate_ms":226,"parse_ms":0,"qtt_ms":105,"reduce_ms":163,"trait_resolve_ms":0,"type_check_ms":438,"zonk_ms":1},"status":"pass","tests":77,"wall_ms":13709},{"cell_metrics":{"cells":17,"propagators":0},"file":"test-string-ops.rkt","heartbeats":{"cell_allocs":432,"constraint_count":0,"constraint_retries":0,"elaborate_steps":92,"infer_steps":176,"meta_created":0,"meta_solved":0,"prop_allocs":0,"prop_firings":0,"reduce_steps":1947,"resolution_cycles":0,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":19,"zonk_steps":188},"memory":{"gc_ms":81,"mem_after_bytes":199986872,"mem_before_bytes":199893432,"mem_retained_bytes":93440},"phases":{"elaborate_ms":28,"parse_ms":0,"qtt_ms":0,"reduce_ms":3001,"trait_resolve_ms":0,"type_check_ms":155,"zonk_ms":0},"status":"pass","tests":27,"wall_ms":17812},{"file":"test-wf-errors-01.rkt","status":"pass","tests":6,"wall_ms":72},{"cell_metrics":{"cells":21,"propagators":0},"file":"test-unit-type.rkt","heartbeats":{"cell_allocs":206,"constraint_count":0,"constraint_retries":0,"elaborate_steps":40,"infer_steps":49,"meta_created":2,"meta_solved":2,"prop_allocs":0,"prop_firings":0,"reduce_steps":65,"resolution_cycles":2,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":16,"zonk_steps":64},"memory":{"gc_ms":77,"mem_after_bytes":190471760,"mem_before_bytes":190473136,"mem_retained_bytes":0},"phases":{"elaborate_ms":13,"parse_ms":0,"qtt_ms":2,"reduce_ms":19,"trait_resolve_ms":0,"type_check_ms":32,"zonk_ms":0},"status":"pass","tests":9,"wall_ms":1705},{"file":"test-wf-engine-01.rkt","status":"pass","tests":30,"wall_ms":281},{"file":"test-wf-literature-01.rkt","status":"pass","tests":13,"wall_ms":162},{"file":"test-wf-tabling-01.rkt","status":"pass","tests":16,"wall_ms":126},{"file":"test-wf-propagators-01.rkt","status":"pass","tests":26,"wall_ms":289},{"file":"test-widening-fixpoint.rkt","status":"pass","tests":13,"wall_ms":100},{"cell_metrics":{"cells":19,"propagators":0},"file":"test-universe-level-inference.rkt","heartbeats":{"cell_allocs":146,"constraint_count":0,"constraint_retries":0,"elaborate_steps":28,"infer_steps":56,"meta_created":6,"meta_solved":6,"prop_allocs":0,"prop_firings":0,"reduce_steps":147,"resolution_cycles":6,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":18,"zonk_steps":68},"memory":{"gc_ms":84,"mem_after_bytes":211931320,"mem_before_bytes":211935024,"mem_retained_bytes":0},"phases":{"elaborate_ms":27,"parse_ms":0,"qtt_ms":3,"reduce_ms":98,"trait_resolve_ms":0,"type_check_ms":68,"zonk_ms":0},"status":"pass","tests":23,"wall_ms":1766},{"cell_metrics":{"cells":25,"propagators":0},"file":"test-where-parsing.rkt","heartbeats":{"cell_allocs":233,"constraint_count":0,"constraint_retries":0,"elaborate_steps":179,"infer_steps":106,"meta_created":2,"meta_solved":2,"prop_allocs":0,"prop_firings":0,"reduce_steps":227,"resolution_cycles":2,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":82,"zonk_steps":196},"memory":{"gc_ms":91,"mem_after_bytes":222650808,"mem_before_bytes":222652592,"mem_retained_bytes":0},"phases":{"elaborate_ms":40,"parse_ms":0,"qtt_ms":38,"reduce_ms":88,"trait_resolve_ms":0,"type_check_ms":73,"zonk_ms":0},"status":"pass","tests":16,"wall_ms":1158},{"cell_metrics":{"cells":19,"propagators":0},"file":"test-widen-specialization.rkt","heartbeats":{"cell_allocs":327,"constraint_count":0,"constraint_retries":0,"elaborate_steps":78,"infer_steps":117,"meta_created":0,"meta_solved":0,"prop_allocs":0,"prop_firings":0,"reduce_steps":244,"resolution_cycles":0,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":73,"zonk_steps":101},"memory":{"gc_ms":80,"mem_after_bytes":200066480,"mem_before_bytes":200096000,"mem_retained_bytes":0},"phases":{"elaborate_ms":16,"parse_ms":0,"qtt_ms":86,"reduce_ms":175,"trait_resolve_ms":0,"type_check_ms":114,"zonk_ms":0},"status":"pass","tests":5,"wall_ms":1309},{"cell_metrics":{"cells":38,"propagators":0},"file":"test-varargs.rkt","heartbeats":{"cell_allocs":671,"constraint_count":0,"constraint_retries":0,"elaborate_steps":222,"infer_steps":400,"meta_created":41,"meta_solved":41,"prop_allocs":0,"prop_firings":0,"reduce_steps":662,"resolution_cycles":41,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":198,"zonk_steps":526},"memory":{"gc_ms":84,"mem_after_bytes":207631640,"mem_before_bytes":207655672,"mem_retained_bytes":0},"phases":{"elaborate_ms":107,"parse_ms":0,"qtt_ms":68,"reduce_ms":383,"trait_resolve_ms":0,"type_check_ms":338,"zonk_ms":0},"status":"pass","tests":23,"wall_ms":3274},{"cell_metrics":{"cells":26,"propagators":6},"file":"test-widenable-trait.rkt","heartbeats":{"cell_allocs":197,"constraint_count":0,"constraint_retries":0,"elaborate_steps":55,"infer_steps":160,"meta_created":11,"meta_solved":8,"prop_allocs":0,"prop_firings":0,"reduce_steps":364,"resolution_cycles":8,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":80,"zonk_steps":201},"memory":{"gc_ms":74,"mem_after_bytes":190861424,"mem_before_bytes":190817776,"mem_retained_bytes":43648},"phases":{"elaborate_ms":48,"parse_ms":0,"qtt_ms":13,"reduce_ms":257,"trait_resolve_ms":0,"type_check_ms":204,"zonk_ms":0},"status":"pass","tests":10,"wall_ms":2103},{"cell_metrics":{"cells":39,"propagators":0},"file":"test-union-find-integration-02.rkt","heartbeats":{"cell_allocs":682,"constraint_count":0,"constraint_retries":0,"elaborate_steps":100,"infer_steps":135,"meta_created":0,"meta_solved":0,"prop_allocs":0,"prop_firings":0,"reduce_steps":256,"resolution_cycles":0,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":63,"zonk_steps":109},"memory":{"gc_ms":79,"mem_after_bytes":207068584,"mem_before_bytes":206951816,"mem_retained_bytes":116768},"phases":{"elaborate_ms":19,"parse_ms":0,"qtt_ms":18,"reduce_ms":93,"trait_resolve_ms":0,"type_check_ms":35,"zonk_ms":0},"status":"pass","tests":3,"wall_ms":5046},{"cell_metrics":{"cells":35,"propagators":0},"file":"test-transducer-02.rkt","heartbeats":{"cell_allocs":917,"constraint_count":0,"constraint_retries":0,"elaborate_steps":357,"infer_steps":680,"meta_created":0,"meta_solved":0,"prop_allocs":0,"prop_firings":0,"reduce_steps":2043,"resolution_cycles":0,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":298,"zonk_steps":556},"memory":{"gc_ms":83,"mem_after_bytes":187888960,"mem_before_bytes":187900928,"mem_retained_bytes":0},"phases":{"elaborate_ms":95,"parse_ms":0,"qtt_ms":218,"reduce_ms":6703,"trait_resolve_ms":0,"type_check_ms":899,"zonk_ms":0},"status":"pass","tests":11,"wall_ms":10951},{"cell_metrics":{"cells":34,"propagators":0},"file":"test-unified-match-01.rkt","heartbeats":{"cell_allocs":626,"constraint_count":0,"constraint_retries":0,"elaborate_steps":281,"infer_steps":296,"meta_created":10,"meta_solved":10,"prop_allocs":0,"prop_firings":0,"reduce_steps":272,"resolution_cycles":10,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":74,"zonk_steps":353},"memory":{"gc_ms":70,"mem_after_bytes":192494368,"mem_before_bytes":192509896,"mem_retained_bytes":0},"phases":{"elaborate_ms":57,"parse_ms":0,"qtt_ms":11,"reduce_ms":73,"trait_resolve_ms":0,"type_check_ms":112,"zonk_ms":0},"status":"pass","tests":15,"wall_ms":8879},{"cell_metrics":{"cells":33,"propagators":0},"file":"test-transducer-01.rkt","heartbeats":{"cell_allocs":794,"constraint_count":0,"constraint_retries":0,"elaborate_steps":399,"infer_steps":949,"meta_created":0,"meta_solved":0,"prop_allocs":0,"prop_firings":0,"reduce_steps":2777,"resolution_cycles":0,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":367,"zonk_steps":750},"memory":{"gc_ms":112,"mem_after_bytes":225550560,"mem_before_bytes":225570800,"mem_retained_bytes":0},"phases":{"elaborate_ms":89,"parse_ms":0,"qtt_ms":155,"reduce_ms":7981,"trait_resolve_ms":0,"type_check_ms":1455,"zonk_ms":0},"status":"pass","tests":17,"wall_ms":14260}],"schema_version":3,"source":"affected","timestamp":"2026-03-30T02:14:24Z","total_tests":7529,"total_wall_ms":124599} +{"all_pass":true,"branch":"claude/add-posits-ints-ffi-oM6pF","commit":"b9a6461","file_count":3,"jobs":3,"machine":"unix-x86_64","results":[{"file":"test-foreign-marshal-ext.rkt","status":"pass","tests":49,"wall_ms":5},{"cell_metrics":{"cells":45,"propagators":1},"file":"test-foreign-block.rkt","heartbeats":{"cell_allocs":765,"constraint_count":0,"constraint_retries":0,"elaborate_steps":56,"infer_steps":43,"meta_created":0,"meta_solved":0,"prop_allocs":0,"prop_firings":0,"reduce_steps":70,"resolution_cycles":0,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":8,"zonk_steps":51},"memory":{"gc_ms":50,"mem_after_bytes":132058696,"mem_before_bytes":132053320,"mem_retained_bytes":5376},"phases":{"elaborate_ms":37,"parse_ms":0,"qtt_ms":0,"reduce_ms":12,"trait_resolve_ms":0,"type_check_ms":8,"zonk_ms":5},"status":"pass","tests":13,"wall_ms":1055},{"cell_metrics":{"cells":37,"propagators":25},"file":"test-foreign.rkt","heartbeats":{"cell_allocs":1433,"constraint_count":0,"constraint_retries":0,"elaborate_steps":209,"infer_steps":35,"meta_created":0,"meta_solved":0,"prop_allocs":0,"prop_firings":0,"reduce_steps":349,"resolution_cycles":0,"solver_backtracks":0,"solver_unifies":0,"trait_resolve_steps":0,"unify_steps":10,"zonk_steps":248},"memory":{"gc_ms":51,"mem_after_bytes":132474144,"mem_before_bytes":132474856,"mem_retained_bytes":0},"phases":{"elaborate_ms":40,"parse_ms":0,"qtt_ms":5,"reduce_ms":67,"trait_resolve_ms":0,"type_check_ms":60,"zonk_ms":0},"status":"pass","tests":52,"wall_ms":4395}],"schema_version":3,"source":"affected","timestamp":"2026-04-28T04:03:01Z","total_tests":114,"total_wall_ms":8169} diff --git a/racket/prologos/data/cache/pnet/prologos/data/nat.pnet b/racket/prologos/data/cache/pnet/prologos/data/nat.pnet index bbb45dc37..c969d1c93 100644 --- a/racket/prologos/data/cache/pnet/prologos/data/nat.pnet +++ b/racket/prologos/data/cache/pnet/prologos/data/nat.pnet @@ -1 +1 @@ -(1 "/home/user/prologos/racket/prologos/lib/prologos/data/nat.prologos:1776910266" #hasheq((add . (#(struct:expr-Pi mw #(struct:expr-Nat) #(struct:expr-Pi mw #(struct:expr-Nat) #(struct:expr-Nat))) . #(struct:expr-lam mw #(struct:expr-Nat) #(struct:expr-lam mw #(struct:expr-Nat) #(struct:expr-reduce #(struct:expr-bvar 0) (#(struct:expr-reduce-arm zero 0 #(struct:expr-bvar 1)) #(struct:expr-reduce-arm suc 1 #(struct:expr-suc #(struct:expr-app #(struct:expr-app #(struct:expr-fvar prologos::data::nat::add) #(struct:expr-bvar 2)) #(struct:expr-bvar 0))))) #t))))) (apply . (#(struct:expr-Pi m0 #(struct:expr-Type #(struct:lzero)) #(struct:expr-Pi m0 #(struct:expr-Type #(struct:lzero)) #(struct:expr-Pi mw #(struct:expr-Pi mw #(struct:expr-bvar 1) #(struct:expr-bvar 1)) #(struct:expr-Pi mw #(struct:expr-bvar 2) #(struct:expr-bvar 2))))) . #(struct:expr-lam m0 #(struct:expr-Type #(struct:lzero)) #(struct:expr-lam m0 #(struct:expr-Type #(struct:lzero)) #(struct:expr-lam mw #(struct:expr-Pi mw #(struct:expr-bvar 1) #(struct:expr-bvar 1)) #(struct:expr-lam mw #(struct:expr-bvar 2) #(struct:expr-app #(struct:expr-bvar 1) #(struct:expr-bvar 0)))))))) (bool-to-nat . (#(struct:expr-Pi mw #(struct:expr-Bool) #(struct:expr-Nat)) . #(struct:expr-lam mw #(struct:expr-Bool) #(struct:expr-reduce #(struct:expr-bvar 0) (#(struct:expr-reduce-arm true 0 #(struct:expr-nat-val 1)) #(struct:expr-reduce-arm false 0 #(struct:expr-nat-val 0))) #t)))) (clamp . (#(struct:expr-Pi mw #(struct:expr-Nat) #(struct:expr-Pi mw #(struct:expr-Nat) #(struct:expr-Pi mw #(struct:expr-Nat) #(struct:expr-Nat)))) . #(struct:expr-lam mw #(struct:expr-Nat) #(struct:expr-lam mw #(struct:expr-Nat) #(struct:expr-lam mw #(struct:expr-hole) #(struct:expr-app #(struct:expr-app #(struct:expr-fvar prologos::data::nat::max) #(struct:expr-bvar 2)) #(struct:expr-app #(struct:expr-app #(struct:expr-fvar prologos::data::nat::min) #(struct:expr-bvar 0)) #(struct:expr-bvar 1)))))))) (compose . (#(struct:expr-Pi m0 #(struct:expr-Type #(struct:lzero)) #(struct:expr-Pi m0 #(struct:expr-Type #(struct:lzero)) #(struct:expr-Pi m0 #(struct:expr-Type #(struct:lzero)) #(struct:expr-Pi mw #(struct:expr-Pi mw #(struct:expr-bvar 2) #(struct:expr-bvar 2)) #(struct:expr-Pi mw #(struct:expr-Pi mw #(struct:expr-bvar 1) #(struct:expr-bvar 4)) #(struct:expr-Pi mw #(struct:expr-bvar 2) #(struct:expr-bvar 4))))))) . #(struct:expr-lam m0 #(struct:expr-Type #(struct:lzero)) #(struct:expr-lam m0 #(struct:expr-Type #(struct:lzero)) #(struct:expr-lam m0 #(struct:expr-Type #(struct:lzero)) #(struct:expr-lam mw #(struct:expr-Pi mw #(struct:expr-bvar 2) #(struct:expr-bvar 2)) #(struct:expr-lam mw #(struct:expr-Pi mw #(struct:expr-bvar 1) #(struct:expr-bvar 4)) #(struct:expr-lam mw #(struct:expr-bvar 2) #(struct:expr-app #(struct:expr-bvar 2) #(struct:expr-app #(struct:expr-bvar 1) #(struct:expr-bvar 0))))))))))) (const . (#(struct:expr-Pi m0 #(struct:expr-Type #(struct:lzero)) #(struct:expr-Pi m0 #(struct:expr-Type #(struct:lzero)) #(struct:expr-Pi mw #(struct:expr-bvar 1) #(struct:expr-Pi mw #(struct:expr-bvar 1) #(struct:expr-bvar 3))))) . #(struct:expr-lam m0 #(struct:expr-Type #(struct:lzero)) #(struct:expr-lam m0 #(struct:expr-Type #(struct:lzero)) #(struct:expr-lam mw #(struct:expr-bvar 1) #(struct:expr-lam mw #(struct:expr-bvar 1) #(struct:expr-bvar 1))))))) (double . (#(struct:expr-Pi mw #(struct:expr-Nat) #(struct:expr-Nat)) . #(struct:expr-lam mw #(struct:expr-Nat) #(struct:expr-reduce #(struct:expr-bvar 0) (#(struct:expr-reduce-arm zero 0 #(struct:expr-nat-val 0)) #(struct:expr-reduce-arm suc 1 #(struct:expr-suc #(struct:expr-suc #(struct:expr-app #(struct:expr-fvar prologos::data::nat::double) #(struct:expr-bvar 0)))))) #t)))) (flip . (#(struct:expr-Pi m0 #(struct:expr-Type #(struct:lzero)) #(struct:expr-Pi m0 #(struct:expr-Type #(struct:lzero)) #(struct:expr-Pi m0 #(struct:expr-Type #(struct:lzero)) #(struct:expr-Pi mw #(struct:expr-Pi mw #(struct:expr-bvar 2) #(struct:expr-Pi mw #(struct:expr-bvar 2) #(struct:expr-bvar 2))) #(struct:expr-Pi mw #(struct:expr-bvar 2) #(struct:expr-Pi mw #(struct:expr-bvar 4) #(struct:expr-bvar 3))))))) . #(struct:expr-lam m0 #(struct:expr-Type #(struct:lzero)) #(struct:expr-lam m0 #(struct:expr-Type #(struct:lzero)) #(struct:expr-lam m0 #(struct:expr-Type #(struct:lzero)) #(struct:expr-lam mw #(struct:expr-Pi mw #(struct:expr-bvar 2) #(struct:expr-Pi mw #(struct:expr-bvar 2) #(struct:expr-bvar 2))) #(struct:expr-lam mw #(struct:expr-bvar 2) #(struct:expr-lam mw #(struct:expr-bvar 4) #(struct:expr-app #(struct:expr-app #(struct:expr-bvar 2) #(struct:expr-bvar 0)) #(struct:expr-bvar 1)))))))))) (ge? . (#(struct:expr-Pi mw #(struct:expr-Nat) #(struct:expr-Pi mw #(struct:expr-Nat) #(struct:expr-Bool))) . #(struct:expr-lam mw #(struct:expr-Nat) #(struct:expr-lam mw #(struct:expr-Nat) #(struct:expr-app #(struct:expr-app #(struct:expr-fvar prologos::data::nat::le?) #(struct:expr-bvar 0)) #(struct:expr-bvar 1)))))) (gt? . (#(struct:expr-Pi mw #(struct:expr-Nat) #(struct:expr-Pi mw #(struct:expr-Nat) #(struct:expr-Bool))) . #(struct:expr-lam mw #(struct:expr-Nat) #(struct:expr-lam mw #(struct:expr-Nat) #(struct:expr-app #(struct:expr-app #(struct:expr-fvar prologos::data::nat::lt?) #(struct:expr-bvar 0)) #(struct:expr-bvar 1)))))) (id . (#(struct:expr-Pi m0 #(struct:expr-Type #(struct:lzero)) #(struct:expr-Pi mw #(struct:expr-bvar 0) #(struct:expr-bvar 1))) . #(struct:expr-lam m0 #(struct:expr-Type #(struct:lzero)) #(struct:expr-lam mw #(struct:expr-bvar 0) #(struct:expr-bvar 0))))) (le? . (#(struct:expr-Pi mw #(struct:expr-Nat) #(struct:expr-Pi mw #(struct:expr-Nat) #(struct:expr-Bool))) . #(struct:expr-lam mw #(struct:expr-Nat) #(struct:expr-lam mw #(struct:expr-Nat) #(struct:expr-app #(struct:expr-fvar prologos::data::nat::zero?) #(struct:expr-app #(struct:expr-app #(struct:expr-fvar prologos::data::nat::sub) #(struct:expr-bvar 1)) #(struct:expr-bvar 0))))))) (lt? . (#(struct:expr-Pi mw #(struct:expr-Nat) #(struct:expr-Pi mw #(struct:expr-Nat) #(struct:expr-Bool))) . #(struct:expr-lam mw #(struct:expr-Nat) #(struct:expr-lam mw #(struct:expr-Nat) #(struct:expr-reduce #(struct:expr-app #(struct:expr-app #(struct:expr-fvar prologos::data::nat::le?) #(struct:expr-bvar 0)) #(struct:expr-bvar 1)) (#(struct:expr-reduce-arm true 0 #(struct:expr-false)) #(struct:expr-reduce-arm false 0 #(struct:expr-true))) #t))))) (max . (#(struct:expr-Pi mw #(struct:expr-Nat) #(struct:expr-Pi mw #(struct:expr-Nat) #(struct:expr-Nat))) . #(struct:expr-lam mw #(struct:expr-Nat) #(struct:expr-lam mw #(struct:expr-Nat) #(struct:expr-reduce #(struct:expr-app #(struct:expr-app #(struct:expr-fvar prologos::data::nat::le?) #(struct:expr-bvar 1)) #(struct:expr-bvar 0)) (#(struct:expr-reduce-arm true 0 #(struct:expr-bvar 0)) #(struct:expr-reduce-arm false 0 #(struct:expr-bvar 1))) #t))))) (min . (#(struct:expr-Pi mw #(struct:expr-Nat) #(struct:expr-Pi mw #(struct:expr-Nat) #(struct:expr-Nat))) . #(struct:expr-lam mw #(struct:expr-Nat) #(struct:expr-lam mw #(struct:expr-Nat) #(struct:expr-reduce #(struct:expr-app #(struct:expr-app #(struct:expr-fvar prologos::data::nat::le?) #(struct:expr-bvar 1)) #(struct:expr-bvar 0)) (#(struct:expr-reduce-arm true 0 #(struct:expr-bvar 1)) #(struct:expr-reduce-arm false 0 #(struct:expr-bvar 0))) #t))))) (mult . (#(struct:expr-Pi mw #(struct:expr-Nat) #(struct:expr-Pi mw #(struct:expr-Nat) #(struct:expr-Nat))) . #(struct:expr-lam mw #(struct:expr-Nat) #(struct:expr-lam mw #(struct:expr-Nat) #(struct:expr-reduce #(struct:expr-bvar 0) (#(struct:expr-reduce-arm zero 0 #(struct:expr-nat-val 0)) #(struct:expr-reduce-arm suc 1 #(struct:expr-app #(struct:expr-app #(struct:expr-fvar prologos::data::nat::add) #(struct:expr-bvar 2)) #(struct:expr-app #(struct:expr-app #(struct:expr-fvar prologos::data::nat::mult) #(struct:expr-bvar 2)) #(struct:expr-bvar 0))))) #t))))) (nat-eq? . (#(struct:expr-Pi mw #(struct:expr-Nat) #(struct:expr-Pi mw #(struct:expr-Nat) #(struct:expr-Bool))) . #(struct:expr-lam mw #(struct:expr-Nat) #(struct:expr-lam mw #(struct:expr-Nat) #(struct:expr-reduce #(struct:expr-app #(struct:expr-app #(struct:expr-fvar prologos::data::nat::le?) #(struct:expr-bvar 1)) #(struct:expr-bvar 0)) (#(struct:expr-reduce-arm true 0 #(struct:expr-app #(struct:expr-app #(struct:expr-fvar prologos::data::nat::le?) #(struct:expr-bvar 0)) #(struct:expr-bvar 1))) #(struct:expr-reduce-arm false 0 #(struct:expr-false))) #t))))) (on . (#(struct:expr-Pi m0 #(struct:expr-Type #(struct:lzero)) #(struct:expr-Pi m0 #(struct:expr-Type #(struct:lzero)) #(struct:expr-Pi m0 #(struct:expr-Type #(struct:lzero)) #(struct:expr-Pi mw #(struct:expr-Pi mw #(struct:expr-bvar 2) #(struct:expr-Pi mw #(struct:expr-bvar 3) #(struct:expr-bvar 3))) #(struct:expr-Pi mw #(struct:expr-Pi mw #(struct:expr-bvar 1) #(struct:expr-bvar 4)) #(struct:expr-Pi mw #(struct:expr-bvar 2) #(struct:expr-Pi mw #(struct:expr-bvar 3) #(struct:expr-bvar 5)))))))) . #(struct:expr-lam m0 #(struct:expr-Type #(struct:lzero)) #(struct:expr-lam m0 #(struct:expr-Type #(struct:lzero)) #(struct:expr-lam m0 #(struct:expr-Type #(struct:lzero)) #(struct:expr-lam mw #(struct:expr-Pi mw #(struct:expr-bvar 2) #(struct:expr-Pi mw #(struct:expr-bvar 3) #(struct:expr-bvar 3))) #(struct:expr-lam mw #(struct:expr-Pi mw #(struct:expr-bvar 1) #(struct:expr-bvar 4)) #(struct:expr-lam mw #(struct:expr-bvar 2) #(struct:expr-lam mw #(struct:expr-bvar 3) #(struct:expr-app #(struct:expr-app #(struct:expr-bvar 3) #(struct:expr-app #(struct:expr-bvar 2) #(struct:expr-bvar 1))) #(struct:expr-app #(struct:expr-bvar 2) #(struct:expr-bvar 0)))))))))))) (pow . (#(struct:expr-Pi mw #(struct:expr-Nat) #(struct:expr-Pi mw #(struct:expr-Nat) #(struct:expr-Nat))) . #(struct:expr-lam mw #(struct:expr-Nat) #(struct:expr-lam mw #(struct:expr-Nat) #(struct:expr-reduce #(struct:expr-bvar 0) (#(struct:expr-reduce-arm zero 0 #(struct:expr-nat-val 1)) #(struct:expr-reduce-arm suc 1 #(struct:expr-app #(struct:expr-app #(struct:expr-fvar prologos::data::nat::mult) #(struct:expr-bvar 2)) #(struct:expr-app #(struct:expr-app #(struct:expr-fvar prologos::data::nat::pow) #(struct:expr-bvar 2)) #(struct:expr-bvar 0))))) #t))))) (pred . (#(struct:expr-Pi mw #(struct:expr-Nat) #(struct:expr-Nat)) . #(struct:expr-lam mw #(struct:expr-Nat) #(struct:expr-reduce #(struct:expr-bvar 0) (#(struct:expr-reduce-arm zero 0 #(struct:expr-nat-val 0)) #(struct:expr-reduce-arm suc 1 #(struct:expr-bvar 0))) #t)))) (prologos::core::apply . (#(struct:expr-Pi m0 #(struct:expr-Type #(struct:lzero)) #(struct:expr-Pi m0 #(struct:expr-Type #(struct:lzero)) #(struct:expr-Pi mw #(struct:expr-Pi mw #(struct:expr-bvar 1) #(struct:expr-bvar 1)) #(struct:expr-Pi mw #(struct:expr-bvar 2) #(struct:expr-bvar 2))))) . #(struct:expr-lam m0 #(struct:expr-Type #(struct:lzero)) #(struct:expr-lam m0 #(struct:expr-Type #(struct:lzero)) #(struct:expr-lam mw #(struct:expr-Pi mw #(struct:expr-bvar 1) #(struct:expr-bvar 1)) #(struct:expr-lam mw #(struct:expr-bvar 2) #(struct:expr-app #(struct:expr-bvar 1) #(struct:expr-bvar 0)))))))) (prologos::core::compose . (#(struct:expr-Pi m0 #(struct:expr-Type #(struct:lzero)) #(struct:expr-Pi m0 #(struct:expr-Type #(struct:lzero)) #(struct:expr-Pi m0 #(struct:expr-Type #(struct:lzero)) #(struct:expr-Pi mw #(struct:expr-Pi mw #(struct:expr-bvar 2) #(struct:expr-bvar 2)) #(struct:expr-Pi mw #(struct:expr-Pi mw #(struct:expr-bvar 1) #(struct:expr-bvar 4)) #(struct:expr-Pi mw #(struct:expr-bvar 2) #(struct:expr-bvar 4))))))) . #(struct:expr-lam m0 #(struct:expr-Type #(struct:lzero)) #(struct:expr-lam m0 #(struct:expr-Type #(struct:lzero)) #(struct:expr-lam m0 #(struct:expr-Type #(struct:lzero)) #(struct:expr-lam mw #(struct:expr-Pi mw #(struct:expr-bvar 2) #(struct:expr-bvar 2)) #(struct:expr-lam mw #(struct:expr-Pi mw #(struct:expr-bvar 1) #(struct:expr-bvar 4)) #(struct:expr-lam mw #(struct:expr-bvar 2) #(struct:expr-app #(struct:expr-bvar 2) #(struct:expr-app #(struct:expr-bvar 1) #(struct:expr-bvar 0))))))))))) (prologos::core::const . (#(struct:expr-Pi m0 #(struct:expr-Type #(struct:lzero)) #(struct:expr-Pi m0 #(struct:expr-Type #(struct:lzero)) #(struct:expr-Pi mw #(struct:expr-bvar 1) #(struct:expr-Pi mw #(struct:expr-bvar 1) #(struct:expr-bvar 3))))) . #(struct:expr-lam m0 #(struct:expr-Type #(struct:lzero)) #(struct:expr-lam m0 #(struct:expr-Type #(struct:lzero)) #(struct:expr-lam mw #(struct:expr-bvar 1) #(struct:expr-lam mw #(struct:expr-bvar 1) #(struct:expr-bvar 1))))))) (prologos::core::flip . (#(struct:expr-Pi m0 #(struct:expr-Type #(struct:lzero)) #(struct:expr-Pi m0 #(struct:expr-Type #(struct:lzero)) #(struct:expr-Pi m0 #(struct:expr-Type #(struct:lzero)) #(struct:expr-Pi mw #(struct:expr-Pi mw #(struct:expr-bvar 2) #(struct:expr-Pi mw #(struct:expr-bvar 2) #(struct:expr-bvar 2))) #(struct:expr-Pi mw #(struct:expr-bvar 2) #(struct:expr-Pi mw #(struct:expr-bvar 4) #(struct:expr-bvar 3))))))) . #(struct:expr-lam m0 #(struct:expr-Type #(struct:lzero)) #(struct:expr-lam m0 #(struct:expr-Type #(struct:lzero)) #(struct:expr-lam m0 #(struct:expr-Type #(struct:lzero)) #(struct:expr-lam mw #(struct:expr-Pi mw #(struct:expr-bvar 2) #(struct:expr-Pi mw #(struct:expr-bvar 2) #(struct:expr-bvar 2))) #(struct:expr-lam mw #(struct:expr-bvar 2) #(struct:expr-lam mw #(struct:expr-bvar 4) #(struct:expr-app #(struct:expr-app #(struct:expr-bvar 2) #(struct:expr-bvar 0)) #(struct:expr-bvar 1)))))))))) (prologos::core::id . (#(struct:expr-Pi m0 #(struct:expr-Type #(struct:lzero)) #(struct:expr-Pi mw #(struct:expr-bvar 0) #(struct:expr-bvar 1))) . #(struct:expr-lam m0 #(struct:expr-Type #(struct:lzero)) #(struct:expr-lam mw #(struct:expr-bvar 0) #(struct:expr-bvar 0))))) (prologos::core::on . (#(struct:expr-Pi m0 #(struct:expr-Type #(struct:lzero)) #(struct:expr-Pi m0 #(struct:expr-Type #(struct:lzero)) #(struct:expr-Pi m0 #(struct:expr-Type #(struct:lzero)) #(struct:expr-Pi mw #(struct:expr-Pi mw #(struct:expr-bvar 2) #(struct:expr-Pi mw #(struct:expr-bvar 3) #(struct:expr-bvar 3))) #(struct:expr-Pi mw #(struct:expr-Pi mw #(struct:expr-bvar 1) #(struct:expr-bvar 4)) #(struct:expr-Pi mw #(struct:expr-bvar 2) #(struct:expr-Pi mw #(struct:expr-bvar 3) #(struct:expr-bvar 5)))))))) . #(struct:expr-lam m0 #(struct:expr-Type #(struct:lzero)) #(struct:expr-lam m0 #(struct:expr-Type #(struct:lzero)) #(struct:expr-lam m0 #(struct:expr-Type #(struct:lzero)) #(struct:expr-lam mw #(struct:expr-Pi mw #(struct:expr-bvar 2) #(struct:expr-Pi mw #(struct:expr-bvar 3) #(struct:expr-bvar 3))) #(struct:expr-lam mw #(struct:expr-Pi mw #(struct:expr-bvar 1) #(struct:expr-bvar 4)) #(struct:expr-lam mw #(struct:expr-bvar 2) #(struct:expr-lam mw #(struct:expr-bvar 3) #(struct:expr-app #(struct:expr-app #(struct:expr-bvar 3) #(struct:expr-app #(struct:expr-bvar 2) #(struct:expr-bvar 1))) #(struct:expr-app #(struct:expr-bvar 2) #(struct:expr-bvar 0)))))))))))) (prologos::data::nat::add . (#(struct:expr-Pi mw #(struct:expr-Nat) #(struct:expr-Pi mw #(struct:expr-Nat) #(struct:expr-Nat))) . #(struct:expr-lam mw #(struct:expr-Nat) #(struct:expr-lam mw #(struct:expr-Nat) #(struct:expr-reduce #(struct:expr-bvar 0) (#(struct:expr-reduce-arm zero 0 #(struct:expr-bvar 1)) #(struct:expr-reduce-arm suc 1 #(struct:expr-suc #(struct:expr-app #(struct:expr-app #(struct:expr-fvar prologos::data::nat::add) #(struct:expr-bvar 2)) #(struct:expr-bvar 0))))) #t))))) (prologos::data::nat::bool-to-nat . (#(struct:expr-Pi mw #(struct:expr-Bool) #(struct:expr-Nat)) . #(struct:expr-lam mw #(struct:expr-Bool) #(struct:expr-reduce #(struct:expr-bvar 0) (#(struct:expr-reduce-arm true 0 #(struct:expr-nat-val 1)) #(struct:expr-reduce-arm false 0 #(struct:expr-nat-val 0))) #t)))) (prologos::data::nat::clamp . (#(struct:expr-Pi mw #(struct:expr-Nat) #(struct:expr-Pi mw #(struct:expr-Nat) #(struct:expr-Pi mw #(struct:expr-Nat) #(struct:expr-Nat)))) . #(struct:expr-lam mw #(struct:expr-Nat) #(struct:expr-lam mw #(struct:expr-Nat) #(struct:expr-lam mw #(struct:expr-hole) #(struct:expr-app #(struct:expr-app #(struct:expr-fvar prologos::data::nat::max) #(struct:expr-bvar 2)) #(struct:expr-app #(struct:expr-app #(struct:expr-fvar prologos::data::nat::min) #(struct:expr-bvar 0)) #(struct:expr-bvar 1)))))))) (prologos::data::nat::double . (#(struct:expr-Pi mw #(struct:expr-Nat) #(struct:expr-Nat)) . #(struct:expr-lam mw #(struct:expr-Nat) #(struct:expr-reduce #(struct:expr-bvar 0) (#(struct:expr-reduce-arm zero 0 #(struct:expr-nat-val 0)) #(struct:expr-reduce-arm suc 1 #(struct:expr-suc #(struct:expr-suc #(struct:expr-app #(struct:expr-fvar prologos::data::nat::double) #(struct:expr-bvar 0)))))) #t)))) (prologos::data::nat::ge? . (#(struct:expr-Pi mw #(struct:expr-Nat) #(struct:expr-Pi mw #(struct:expr-Nat) #(struct:expr-Bool))) . #(struct:expr-lam mw #(struct:expr-Nat) #(struct:expr-lam mw #(struct:expr-Nat) #(struct:expr-app #(struct:expr-app #(struct:expr-fvar prologos::data::nat::le?) #(struct:expr-bvar 0)) #(struct:expr-bvar 1)))))) (prologos::data::nat::gt? . (#(struct:expr-Pi mw #(struct:expr-Nat) #(struct:expr-Pi mw #(struct:expr-Nat) #(struct:expr-Bool))) . #(struct:expr-lam mw #(struct:expr-Nat) #(struct:expr-lam mw #(struct:expr-Nat) #(struct:expr-app #(struct:expr-app #(struct:expr-fvar prologos::data::nat::lt?) #(struct:expr-bvar 0)) #(struct:expr-bvar 1)))))) (prologos::data::nat::le? . (#(struct:expr-Pi mw #(struct:expr-Nat) #(struct:expr-Pi mw #(struct:expr-Nat) #(struct:expr-Bool))) . #(struct:expr-lam mw #(struct:expr-Nat) #(struct:expr-lam mw #(struct:expr-Nat) #(struct:expr-app #(struct:expr-fvar prologos::data::nat::zero?) #(struct:expr-app #(struct:expr-app #(struct:expr-fvar prologos::data::nat::sub) #(struct:expr-bvar 1)) #(struct:expr-bvar 0))))))) (prologos::data::nat::lt? . (#(struct:expr-Pi mw #(struct:expr-Nat) #(struct:expr-Pi mw #(struct:expr-Nat) #(struct:expr-Bool))) . #(struct:expr-lam mw #(struct:expr-Nat) #(struct:expr-lam mw #(struct:expr-Nat) #(struct:expr-reduce #(struct:expr-app #(struct:expr-app #(struct:expr-fvar prologos::data::nat::le?) #(struct:expr-bvar 0)) #(struct:expr-bvar 1)) (#(struct:expr-reduce-arm true 0 #(struct:expr-false)) #(struct:expr-reduce-arm false 0 #(struct:expr-true))) #t))))) (prologos::data::nat::max . (#(struct:expr-Pi mw #(struct:expr-Nat) #(struct:expr-Pi mw #(struct:expr-Nat) #(struct:expr-Nat))) . #(struct:expr-lam mw #(struct:expr-Nat) #(struct:expr-lam mw #(struct:expr-Nat) #(struct:expr-reduce #(struct:expr-app #(struct:expr-app #(struct:expr-fvar prologos::data::nat::le?) #(struct:expr-bvar 1)) #(struct:expr-bvar 0)) (#(struct:expr-reduce-arm true 0 #(struct:expr-bvar 0)) #(struct:expr-reduce-arm false 0 #(struct:expr-bvar 1))) #t))))) (prologos::data::nat::min . (#(struct:expr-Pi mw #(struct:expr-Nat) #(struct:expr-Pi mw #(struct:expr-Nat) #(struct:expr-Nat))) . #(struct:expr-lam mw #(struct:expr-Nat) #(struct:expr-lam mw #(struct:expr-Nat) #(struct:expr-reduce #(struct:expr-app #(struct:expr-app #(struct:expr-fvar prologos::data::nat::le?) #(struct:expr-bvar 1)) #(struct:expr-bvar 0)) (#(struct:expr-reduce-arm true 0 #(struct:expr-bvar 1)) #(struct:expr-reduce-arm false 0 #(struct:expr-bvar 0))) #t))))) (prologos::data::nat::mult . (#(struct:expr-Pi mw #(struct:expr-Nat) #(struct:expr-Pi mw #(struct:expr-Nat) #(struct:expr-Nat))) . #(struct:expr-lam mw #(struct:expr-Nat) #(struct:expr-lam mw #(struct:expr-Nat) #(struct:expr-reduce #(struct:expr-bvar 0) (#(struct:expr-reduce-arm zero 0 #(struct:expr-nat-val 0)) #(struct:expr-reduce-arm suc 1 #(struct:expr-app #(struct:expr-app #(struct:expr-fvar prologos::data::nat::add) #(struct:expr-bvar 2)) #(struct:expr-app #(struct:expr-app #(struct:expr-fvar prologos::data::nat::mult) #(struct:expr-bvar 2)) #(struct:expr-bvar 0))))) #t))))) (prologos::data::nat::nat-eq? . (#(struct:expr-Pi mw #(struct:expr-Nat) #(struct:expr-Pi mw #(struct:expr-Nat) #(struct:expr-Bool))) . #(struct:expr-lam mw #(struct:expr-Nat) #(struct:expr-lam mw #(struct:expr-Nat) #(struct:expr-reduce #(struct:expr-app #(struct:expr-app #(struct:expr-fvar prologos::data::nat::le?) #(struct:expr-bvar 1)) #(struct:expr-bvar 0)) (#(struct:expr-reduce-arm true 0 #(struct:expr-app #(struct:expr-app #(struct:expr-fvar prologos::data::nat::le?) #(struct:expr-bvar 0)) #(struct:expr-bvar 1))) #(struct:expr-reduce-arm false 0 #(struct:expr-false))) #t))))) (prologos::data::nat::pow . (#(struct:expr-Pi mw #(struct:expr-Nat) #(struct:expr-Pi mw #(struct:expr-Nat) #(struct:expr-Nat))) . #(struct:expr-lam mw #(struct:expr-Nat) #(struct:expr-lam mw #(struct:expr-Nat) #(struct:expr-reduce #(struct:expr-bvar 0) (#(struct:expr-reduce-arm zero 0 #(struct:expr-nat-val 1)) #(struct:expr-reduce-arm suc 1 #(struct:expr-app #(struct:expr-app #(struct:expr-fvar prologos::data::nat::mult) #(struct:expr-bvar 2)) #(struct:expr-app #(struct:expr-app #(struct:expr-fvar prologos::data::nat::pow) #(struct:expr-bvar 2)) #(struct:expr-bvar 0))))) #t))))) (prologos::data::nat::pred . (#(struct:expr-Pi mw #(struct:expr-Nat) #(struct:expr-Nat)) . #(struct:expr-lam mw #(struct:expr-Nat) #(struct:expr-reduce #(struct:expr-bvar 0) (#(struct:expr-reduce-arm zero 0 #(struct:expr-nat-val 0)) #(struct:expr-reduce-arm suc 1 #(struct:expr-bvar 0))) #t)))) (prologos::data::nat::sub . (#(struct:expr-Pi mw #(struct:expr-Nat) #(struct:expr-Pi mw #(struct:expr-Nat) #(struct:expr-Nat))) . #(struct:expr-lam mw #(struct:expr-Nat) #(struct:expr-lam mw #(struct:expr-Nat) #(struct:expr-reduce #(struct:expr-bvar 0) (#(struct:expr-reduce-arm zero 0 #(struct:expr-bvar 1)) #(struct:expr-reduce-arm suc 1 #(struct:expr-app #(struct:expr-fvar prologos::data::nat::pred) #(struct:expr-app #(struct:expr-app #(struct:expr-fvar prologos::data::nat::sub) #(struct:expr-bvar 2)) #(struct:expr-bvar 0))))) #t))))) (prologos::data::nat::zero? . (#(struct:expr-Pi mw #(struct:expr-Nat) #(struct:expr-Bool)) . #(struct:expr-lam mw #(struct:expr-Nat) #(struct:expr-reduce #(struct:expr-bvar 0) (#(struct:expr-reduce-arm zero 0 #(struct:expr-true)) #(struct:expr-reduce-arm suc 1 #(struct:expr-false))) #t)))) (sub . (#(struct:expr-Pi mw #(struct:expr-Nat) #(struct:expr-Pi mw #(struct:expr-Nat) #(struct:expr-Nat))) . #(struct:expr-lam mw #(struct:expr-Nat) #(struct:expr-lam mw #(struct:expr-Nat) #(struct:expr-reduce #(struct:expr-bvar 0) (#(struct:expr-reduce-arm zero 0 #(struct:expr-bvar 1)) #(struct:expr-reduce-arm suc 1 #(struct:expr-app #(struct:expr-fvar prologos::data::nat::pred) #(struct:expr-app #(struct:expr-app #(struct:expr-fvar prologos::data::nat::sub) #(struct:expr-bvar 2)) #(struct:expr-bvar 0))))) #t))))) (zero? . (#(struct:expr-Pi mw #(struct:expr-Nat) #(struct:expr-Bool)) . #(struct:expr-lam mw #(struct:expr-Nat) #(struct:expr-reduce #(struct:expr-bvar 0) (#(struct:expr-reduce-arm zero 0 #(struct:expr-true)) #(struct:expr-reduce-arm suc 1 #(struct:expr-false))) #t))))) #hasheq((add . #(struct:spec-entry ((Nat Nat -> Nat)) #f #f #(struct:srcloc "" 0 0 0) () () #f #f)) (apply . #(struct:spec-entry (((A -> B) A -> B)) #f #f #(struct:srcloc "" 0 0 0) () ((A Type 0) (B Type 0)) #f #f)) (bool-to-nat . #(struct:spec-entry ((Bool -> Nat)) #f #f #(struct:srcloc "" 0 0 0) () () #f #f)) (clamp . #(struct:spec-entry ((Nat Nat -> Nat -> Nat)) #f #f #(struct:srcloc "" 0 0 0) () () #f #f)) (compose . #(struct:spec-entry (((B -> C) (A -> B) A -> C)) #f #f #(struct:srcloc "" 0 0 0) () ((B Type 0) (C Type 0) (A Type 0)) #f #f)) (const . #(struct:spec-entry ((A B -> A)) #f #f #(struct:srcloc "" 0 0 0) () ((A Type 0) (B Type 0)) #f #f)) (double . #(struct:spec-entry ((Nat -> Nat)) #f #f #(struct:srcloc "" 0 0 0) () () #f #f)) (flip . #(struct:spec-entry (((A -> B -> C) B A -> C)) #f #f #(struct:srcloc "" 0 0 0) () ((A Type 0) (B Type 0) (C Type 0)) #f #f)) (ge? . #(struct:spec-entry ((Nat Nat -> Bool)) #f #f #(struct:srcloc "" 0 0 0) () () #f #f)) (gt? . #(struct:spec-entry ((Nat Nat -> Bool)) #f #f #(struct:srcloc "" 0 0 0) () () #f #f)) (id . #(struct:spec-entry ((A -> A)) #f #f #(struct:srcloc "" 0 0 0) () ((A Type 0)) #f #f)) (le? . #(struct:spec-entry ((Nat Nat -> Bool)) #f #f #(struct:srcloc "" 0 0 0) () () #f #f)) (lt? . #(struct:spec-entry ((Nat Nat -> Bool)) #f #f #(struct:srcloc "" 0 0 0) () () #f #f)) (max . #(struct:spec-entry ((Nat Nat -> Nat)) #f #f #(struct:srcloc "" 0 0 0) () () #f #f)) (min . #(struct:spec-entry ((Nat Nat -> Nat)) #f #f #(struct:srcloc "" 0 0 0) () () #f #f)) (mult . #(struct:spec-entry ((Nat Nat -> Nat)) #f #f #(struct:srcloc "" 0 0 0) () () #f #f)) (nat-eq? . #(struct:spec-entry ((Nat Nat -> Bool)) #f #f #(struct:srcloc "" 0 0 0) () () #f #f)) (on . #(struct:spec-entry (((B -> B -> C) (A -> B) A A -> C)) #f #f #(struct:srcloc "" 0 0 0) () ((B Type 0) (C Type 0) (A Type 0)) #f #f)) (pow . #(struct:spec-entry ((Nat Nat -> Nat)) #f #f #(struct:srcloc "" 0 0 0) () () #f #f)) (pred . #(struct:spec-entry ((Nat -> Nat)) #f #f #(struct:srcloc "" 0 0 0) () () #f #f)) (sub . #(struct:spec-entry ((Nat Nat -> Nat)) #f #f #(struct:srcloc "" 0 0 0) () () #f #f)) (zero? . #(struct:spec-entry ((Nat -> Bool)) #f #f #(struct:srcloc "" 0 0 0) () () #f #f))) #hasheq((Ordering . #(struct:srcloc "/home/user/prologos/racket/prologos/lib/prologos/data/ordering.prologos" 8 0 40)) (add . #(struct:srcloc "/home/user/prologos/racket/prologos/lib/prologos/data/nat.prologos" 10 0 69)) (and . #(struct:srcloc "/home/user/prologos/racket/prologos/lib/prologos/data/bool.prologos" 17 0 62)) (apply . #(struct:srcloc "/home/user/prologos/racket/prologos/lib/prologos/core.prologos" 25 0 23)) (bool-eq . #(struct:srcloc "/home/user/prologos/racket/prologos/lib/prologos/data/bool.prologos" 38 0 66)) (bool-to-nat . #(struct:srcloc "/home/user/prologos/racket/prologos/lib/prologos/data/nat.prologos" 119 0 74)) (clamp . #(struct:srcloc "/home/user/prologos/racket/prologos/lib/prologos/data/nat.prologos" 126 0 54)) (compose . #(struct:srcloc "/home/user/prologos/racket/prologos/lib/prologos/core.prologos" 20 0 29)) (const . #(struct:srcloc "/home/user/prologos/racket/prologos/lib/prologos/core.prologos" 15 0 20)) (double . #(struct:srcloc "/home/user/prologos/racket/prologos/lib/prologos/data/nat.prologos" 24 0 79)) (eq-ord . #(struct:srcloc "/home/user/prologos/racket/prologos/lib/prologos/data/ordering.prologos" 8 0 40)) (flip . #(struct:srcloc "/home/user/prologos/racket/prologos/lib/prologos/core.prologos" 30 0 26)) (ge? . #(struct:srcloc "/home/user/prologos/racket/prologos/lib/prologos/data/nat.prologos" 85 0 24)) (gt-ord . #(struct:srcloc "/home/user/prologos/racket/prologos/lib/prologos/data/ordering.prologos" 8 0 40)) (gt? . #(struct:srcloc "/home/user/prologos/racket/prologos/lib/prologos/data/nat.prologos" 80 0 24)) (id . #(struct:srcloc "/home/user/prologos/racket/prologos/lib/prologos/core.prologos" 10 0 15)) (implies . #(struct:srcloc "/home/user/prologos/racket/prologos/lib/prologos/data/bool.prologos" 59 0 33)) (le? . #(struct:srcloc "/home/user/prologos/racket/prologos/lib/prologos/data/nat.prologos" 68 0 31)) (lt-ord . #(struct:srcloc "/home/user/prologos/racket/prologos/lib/prologos/data/ordering.prologos" 8 0 40)) (lt? . #(struct:srcloc "/home/user/prologos/racket/prologos/lib/prologos/data/nat.prologos" 73 0 73)) (max . #(struct:srcloc "/home/user/prologos/racket/prologos/lib/prologos/data/nat.prologos" 108 0 66)) (min . #(struct:srcloc "/home/user/prologos/racket/prologos/lib/prologos/data/nat.prologos" 101 0 66)) (mult . #(struct:srcloc "/home/user/prologos/racket/prologos/lib/prologos/data/nat.prologos" 17 0 76)) (nand . #(struct:srcloc "/home/user/prologos/racket/prologos/lib/prologos/data/bool.prologos" 49 0 30)) (nat-eq? . #(struct:srcloc "/home/user/prologos/racket/prologos/lib/prologos/data/nat.prologos" 90 0 80)) (nor . #(struct:srcloc "/home/user/prologos/racket/prologos/lib/prologos/data/bool.prologos" 54 0 28)) (not . #(struct:srcloc "/home/user/prologos/racket/prologos/lib/prologos/data/bool.prologos" 10 0 63)) (on . #(struct:srcloc "/home/user/prologos/racket/prologos/lib/prologos/core.prologos" 36 0 32)) (or . #(struct:srcloc "/home/user/prologos/racket/prologos/lib/prologos/data/bool.prologos" 24 0 60)) (pow . #(struct:srcloc "/home/user/prologos/racket/prologos/lib/prologos/data/nat.prologos" 57 0 92)) (pred . #(struct:srcloc "/home/user/prologos/racket/prologos/lib/prologos/data/nat.prologos" 31 0 60)) (prologos::core::apply . #(struct:srcloc "/home/user/prologos/racket/prologos/lib/prologos/core.prologos" 25 0 23)) (prologos::core::compose . #(struct:srcloc "/home/user/prologos/racket/prologos/lib/prologos/core.prologos" 20 0 29)) (prologos::core::const . #(struct:srcloc "/home/user/prologos/racket/prologos/lib/prologos/core.prologos" 15 0 20)) (prologos::core::flip . #(struct:srcloc "/home/user/prologos/racket/prologos/lib/prologos/core.prologos" 30 0 26)) (prologos::core::id . #(struct:srcloc "/home/user/prologos/racket/prologos/lib/prologos/core.prologos" 10 0 15)) (prologos::core::on . #(struct:srcloc "/home/user/prologos/racket/prologos/lib/prologos/core.prologos" 36 0 32)) (prologos::data::bool::and . #(struct:srcloc "/home/user/prologos/racket/prologos/lib/prologos/data/bool.prologos" 17 0 62)) (prologos::data::bool::bool-eq . #(struct:srcloc "/home/user/prologos/racket/prologos/lib/prologos/data/bool.prologos" 38 0 66)) (prologos::data::bool::implies . #(struct:srcloc "/home/user/prologos/racket/prologos/lib/prologos/data/bool.prologos" 59 0 33)) (prologos::data::bool::nand . #(struct:srcloc "/home/user/prologos/racket/prologos/lib/prologos/data/bool.prologos" 49 0 30)) (prologos::data::bool::nor . #(struct:srcloc "/home/user/prologos/racket/prologos/lib/prologos/data/bool.prologos" 54 0 28)) (prologos::data::bool::not . #(struct:srcloc "/home/user/prologos/racket/prologos/lib/prologos/data/bool.prologos" 10 0 63)) (prologos::data::bool::or . #(struct:srcloc "/home/user/prologos/racket/prologos/lib/prologos/data/bool.prologos" 24 0 60)) (prologos::data::bool::xor . #(struct:srcloc "/home/user/prologos/racket/prologos/lib/prologos/data/bool.prologos" 31 0 62)) (prologos::data::nat::add . #(struct:srcloc "/home/user/prologos/racket/prologos/lib/prologos/data/nat.prologos" 10 0 69)) (prologos::data::nat::bool-to-nat . #(struct:srcloc "/home/user/prologos/racket/prologos/lib/prologos/data/nat.prologos" 119 0 74)) (prologos::data::nat::clamp . #(struct:srcloc "/home/user/prologos/racket/prologos/lib/prologos/data/nat.prologos" 126 0 54)) (prologos::data::nat::double . #(struct:srcloc "/home/user/prologos/racket/prologos/lib/prologos/data/nat.prologos" 24 0 79)) (prologos::data::nat::ge? . #(struct:srcloc "/home/user/prologos/racket/prologos/lib/prologos/data/nat.prologos" 85 0 24)) (prologos::data::nat::gt? . #(struct:srcloc "/home/user/prologos/racket/prologos/lib/prologos/data/nat.prologos" 80 0 24)) (prologos::data::nat::le? . #(struct:srcloc "/home/user/prologos/racket/prologos/lib/prologos/data/nat.prologos" 68 0 31)) (prologos::data::nat::lt? . #(struct:srcloc "/home/user/prologos/racket/prologos/lib/prologos/data/nat.prologos" 73 0 73)) (prologos::data::nat::max . #(struct:srcloc "/home/user/prologos/racket/prologos/lib/prologos/data/nat.prologos" 108 0 66)) (prologos::data::nat::min . #(struct:srcloc "/home/user/prologos/racket/prologos/lib/prologos/data/nat.prologos" 101 0 66)) (prologos::data::nat::mult . #(struct:srcloc "/home/user/prologos/racket/prologos/lib/prologos/data/nat.prologos" 17 0 76)) (prologos::data::nat::nat-eq? . #(struct:srcloc "/home/user/prologos/racket/prologos/lib/prologos/data/nat.prologos" 90 0 80)) (prologos::data::nat::pow . #(struct:srcloc "/home/user/prologos/racket/prologos/lib/prologos/data/nat.prologos" 57 0 92)) (prologos::data::nat::pred . #(struct:srcloc "/home/user/prologos/racket/prologos/lib/prologos/data/nat.prologos" 31 0 60)) (prologos::data::nat::sub . #(struct:srcloc "/home/user/prologos/racket/prologos/lib/prologos/data/nat.prologos" 50 0 70)) (prologos::data::nat::zero? . #(struct:srcloc "/home/user/prologos/racket/prologos/lib/prologos/data/nat.prologos" 38 0 65)) (prologos::data::ordering::Ordering . #(struct:srcloc "/home/user/prologos/racket/prologos/lib/prologos/data/ordering.prologos" 8 0 40)) (prologos::data::ordering::eq-ord . #(struct:srcloc "/home/user/prologos/racket/prologos/lib/prologos/data/ordering.prologos" 8 0 40)) (prologos::data::ordering::gt-ord . #(struct:srcloc "/home/user/prologos/racket/prologos/lib/prologos/data/ordering.prologos" 8 0 40)) (prologos::data::ordering::lt-ord . #(struct:srcloc "/home/user/prologos/racket/prologos/lib/prologos/data/ordering.prologos" 8 0 40)) (sub . #(struct:srcloc "/home/user/prologos/racket/prologos/lib/prologos/data/nat.prologos" 50 0 70)) (xor . #(struct:srcloc "/home/user/prologos/racket/prologos/lib/prologos/data/bool.prologos" 31 0 62)) (zero? . #(struct:srcloc "/home/user/prologos/racket/prologos/lib/prologos/data/nat.prologos" 38 0 65))) (add mult double pred zero? sub pow le? lt? gt? ge? nat-eq? min max bool-to-nat clamp) "prologos::data::nat" #hasheq(($compose . expand-compose-sexp) ($list-literal . expand-list-literal) ($lseq-literal . expand-lseq-literal) ($mixfix . expand-mixfix-form) ($pipe-gt . expand-pipe-block) ($quasiquote . expand-quasiquote) ($quote . expand-quote) (cond . expand-cond) (do . expand-do) (if . expand-if) (let . expand-let) (pipe2 . #(struct:preparse-macro pipe2 (pipe2 $x $f $g) ($g ($f $x)))) (pipe3 . #(struct:preparse-macro pipe3 (pipe3 $x $f $g $h) ($h ($g ($f $x))))) (twice . #(struct:preparse-macro twice (twice $f $x) ($f ($f $x)))) (unless . #(struct:preparse-macro unless (unless $cond $body) (if $cond unit $body))) (when . #(struct:preparse-macro when (when $cond $body) (if $cond $body unit))) (with-transient . expand-with-transient)) #hasheq((eq-ord . #(struct:ctor-meta Ordering () () () 1)) (false . #(struct:ctor-meta Bool () () () 1)) (gt-ord . #(struct:ctor-meta Ordering () () () 2)) (lt-ord . #(struct:ctor-meta Ordering () () () 0)) (suc . #(struct:ctor-meta Nat () (Nat) (#t) 1)) (true . #(struct:ctor-meta Bool () () () 0)) (unit . #(struct:ctor-meta Unit () () () 0)) (zero . #(struct:ctor-meta Nat () () () 0))) #hasheq((Bool . (true false)) (Nat . (zero suc)) (Ordering . (lt-ord eq-ord gt-ord)) (Unit . (unit))) #hasheq() #hasheq(((Posit16 . Posit32) . #t) ((Nat . Int) . #t) ((Posit8 . Posit64) . #t) ((Posit8 . Posit32) . #t) ((Posit32 . Posit64) . #t) ((Nat . Rat) . #t) ((Posit8 . Posit16) . #t) ((Posit16 . Posit64) . #t) ((Int . Rat) . #t)) #hasheq() #hasheq() #hasheq() #hasheq() #hasheq() #hasheq() #hasheq() #hasheq() #hasheq((add . (x y)) (and . (a b)) (apply . (A B f x)) (bool-eq . (a b)) (bool-to-nat . (b)) (clamp . (low high)) (compose . (B C A g f x)) (const . (A B x _)) (double . (n)) (flip . (A B C f b a)) (ge? . (x y)) (gt? . (x y)) (id . (A x)) (implies . (a b)) (le? . (x y)) (lt? . (x y)) (max . (x y)) (min . (x y)) (mult . (x y)) (nand . (a b)) (nat-eq? . (x y)) (nor . (a b)) (not . (b)) (on . (B C A f g x y)) (or . (a b)) (pow . (base exp)) (pred . (n)) (sub . (x y)) (xor . (a b)) (zero? . (n))) #hasheq() #hasheq() #hasheq()) \ No newline at end of file +(1 "/home/user/prologos/racket/prologos/lib/prologos/data/nat.prologos:1776910266" #hasheq((add . (#(struct:expr-Pi mw #(struct:expr-Nat) #(struct:expr-Pi mw #(struct:expr-Nat) #(struct:expr-Nat))) . #(struct:expr-lam mw #(struct:expr-Nat) #(struct:expr-lam mw #(struct:expr-Nat) #(struct:expr-reduce #(struct:expr-bvar 0) (#(struct:expr-reduce-arm zero 0 #(struct:expr-bvar 1)) #(struct:expr-reduce-arm suc 1 #(struct:expr-suc #(struct:expr-app #(struct:expr-app #(struct:expr-fvar prologos::data::nat::add) #(struct:expr-bvar 2)) #(struct:expr-bvar 0))))) #t))))) (apply . (#(struct:expr-Pi m0 #(struct:expr-Type #(struct:lzero)) #(struct:expr-Pi m0 #(struct:expr-Type #(struct:lzero)) #(struct:expr-Pi mw #(struct:expr-Pi mw #(struct:expr-bvar 1) #(struct:expr-bvar 1)) #(struct:expr-Pi mw #(struct:expr-bvar 2) #(struct:expr-bvar 2))))) . #(struct:expr-lam m0 #(struct:expr-Type #(struct:lzero)) #(struct:expr-lam m0 #(struct:expr-Type #(struct:lzero)) #(struct:expr-lam mw #(struct:expr-Pi mw #(struct:expr-bvar 1) #(struct:expr-bvar 1)) #(struct:expr-lam mw #(struct:expr-bvar 2) #(struct:expr-app #(struct:expr-bvar 1) #(struct:expr-bvar 0)))))))) (bool-to-nat . (#(struct:expr-Pi mw #(struct:expr-Bool) #(struct:expr-Nat)) . #(struct:expr-lam mw #(struct:expr-Bool) #(struct:expr-reduce #(struct:expr-bvar 0) (#(struct:expr-reduce-arm true 0 #(struct:expr-nat-val 1)) #(struct:expr-reduce-arm false 0 #(struct:expr-nat-val 0))) #t)))) (clamp . (#(struct:expr-Pi mw #(struct:expr-Nat) #(struct:expr-Pi mw #(struct:expr-Nat) #(struct:expr-Pi mw #(struct:expr-Nat) #(struct:expr-Nat)))) . #(struct:expr-lam mw #(struct:expr-Nat) #(struct:expr-lam mw #(struct:expr-Nat) #(struct:expr-lam mw #(struct:expr-hole) #(struct:expr-app #(struct:expr-app #(struct:expr-fvar prologos::data::nat::max) #(struct:expr-bvar 2)) #(struct:expr-app #(struct:expr-app #(struct:expr-fvar prologos::data::nat::min) #(struct:expr-bvar 0)) #(struct:expr-bvar 1)))))))) (compose . (#(struct:expr-Pi m0 #(struct:expr-Type #(struct:lzero)) #(struct:expr-Pi m0 #(struct:expr-Type #(struct:lzero)) #(struct:expr-Pi m0 #(struct:expr-Type #(struct:lzero)) #(struct:expr-Pi mw #(struct:expr-Pi mw #(struct:expr-bvar 2) #(struct:expr-bvar 2)) #(struct:expr-Pi mw #(struct:expr-Pi mw #(struct:expr-bvar 1) #(struct:expr-bvar 4)) #(struct:expr-Pi mw #(struct:expr-bvar 2) #(struct:expr-bvar 4))))))) . #(struct:expr-lam m0 #(struct:expr-Type #(struct:lzero)) #(struct:expr-lam m0 #(struct:expr-Type #(struct:lzero)) #(struct:expr-lam m0 #(struct:expr-Type #(struct:lzero)) #(struct:expr-lam mw #(struct:expr-Pi mw #(struct:expr-bvar 2) #(struct:expr-bvar 2)) #(struct:expr-lam mw #(struct:expr-Pi mw #(struct:expr-bvar 1) #(struct:expr-bvar 4)) #(struct:expr-lam mw #(struct:expr-bvar 2) #(struct:expr-app #(struct:expr-bvar 2) #(struct:expr-app #(struct:expr-bvar 1) #(struct:expr-bvar 0))))))))))) (const . (#(struct:expr-Pi m0 #(struct:expr-Type #(struct:lzero)) #(struct:expr-Pi m0 #(struct:expr-Type #(struct:lzero)) #(struct:expr-Pi mw #(struct:expr-bvar 1) #(struct:expr-Pi mw #(struct:expr-bvar 1) #(struct:expr-bvar 3))))) . #(struct:expr-lam m0 #(struct:expr-Type #(struct:lzero)) #(struct:expr-lam m0 #(struct:expr-Type #(struct:lzero)) #(struct:expr-lam mw #(struct:expr-bvar 1) #(struct:expr-lam mw #(struct:expr-bvar 1) #(struct:expr-bvar 1))))))) (double . (#(struct:expr-Pi mw #(struct:expr-Nat) #(struct:expr-Nat)) . #(struct:expr-lam mw #(struct:expr-Nat) #(struct:expr-reduce #(struct:expr-bvar 0) (#(struct:expr-reduce-arm zero 0 #(struct:expr-nat-val 0)) #(struct:expr-reduce-arm suc 1 #(struct:expr-suc #(struct:expr-suc #(struct:expr-app #(struct:expr-fvar prologos::data::nat::double) #(struct:expr-bvar 0)))))) #t)))) (flip . (#(struct:expr-Pi m0 #(struct:expr-Type #(struct:lzero)) #(struct:expr-Pi m0 #(struct:expr-Type #(struct:lzero)) #(struct:expr-Pi m0 #(struct:expr-Type #(struct:lzero)) #(struct:expr-Pi mw #(struct:expr-Pi mw #(struct:expr-bvar 2) #(struct:expr-Pi mw #(struct:expr-bvar 2) #(struct:expr-bvar 2))) #(struct:expr-Pi mw #(struct:expr-bvar 2) #(struct:expr-Pi mw #(struct:expr-bvar 4) #(struct:expr-bvar 3))))))) . #(struct:expr-lam m0 #(struct:expr-Type #(struct:lzero)) #(struct:expr-lam m0 #(struct:expr-Type #(struct:lzero)) #(struct:expr-lam m0 #(struct:expr-Type #(struct:lzero)) #(struct:expr-lam mw #(struct:expr-Pi mw #(struct:expr-bvar 2) #(struct:expr-Pi mw #(struct:expr-bvar 2) #(struct:expr-bvar 2))) #(struct:expr-lam mw #(struct:expr-bvar 2) #(struct:expr-lam mw #(struct:expr-bvar 4) #(struct:expr-app #(struct:expr-app #(struct:expr-bvar 2) #(struct:expr-bvar 0)) #(struct:expr-bvar 1)))))))))) (ge? . (#(struct:expr-Pi mw #(struct:expr-Nat) #(struct:expr-Pi mw #(struct:expr-Nat) #(struct:expr-Bool))) . #(struct:expr-lam mw #(struct:expr-Nat) #(struct:expr-lam mw #(struct:expr-Nat) #(struct:expr-app #(struct:expr-app #(struct:expr-fvar prologos::data::nat::le?) #(struct:expr-bvar 0)) #(struct:expr-bvar 1)))))) (gt? . (#(struct:expr-Pi mw #(struct:expr-Nat) #(struct:expr-Pi mw #(struct:expr-Nat) #(struct:expr-Bool))) . #(struct:expr-lam mw #(struct:expr-Nat) #(struct:expr-lam mw #(struct:expr-Nat) #(struct:expr-app #(struct:expr-app #(struct:expr-fvar prologos::data::nat::lt?) #(struct:expr-bvar 0)) #(struct:expr-bvar 1)))))) (id . (#(struct:expr-Pi m0 #(struct:expr-Type #(struct:lzero)) #(struct:expr-Pi mw #(struct:expr-bvar 0) #(struct:expr-bvar 1))) . #(struct:expr-lam m0 #(struct:expr-Type #(struct:lzero)) #(struct:expr-lam mw #(struct:expr-bvar 0) #(struct:expr-bvar 0))))) (le? . (#(struct:expr-Pi mw #(struct:expr-Nat) #(struct:expr-Pi mw #(struct:expr-Nat) #(struct:expr-Bool))) . #(struct:expr-lam mw #(struct:expr-Nat) #(struct:expr-lam mw #(struct:expr-Nat) #(struct:expr-app #(struct:expr-fvar prologos::data::nat::zero?) #(struct:expr-app #(struct:expr-app #(struct:expr-fvar prologos::data::nat::sub) #(struct:expr-bvar 1)) #(struct:expr-bvar 0))))))) (lt? . (#(struct:expr-Pi mw #(struct:expr-Nat) #(struct:expr-Pi mw #(struct:expr-Nat) #(struct:expr-Bool))) . #(struct:expr-lam mw #(struct:expr-Nat) #(struct:expr-lam mw #(struct:expr-Nat) #(struct:expr-reduce #(struct:expr-app #(struct:expr-app #(struct:expr-fvar prologos::data::nat::le?) #(struct:expr-bvar 0)) #(struct:expr-bvar 1)) (#(struct:expr-reduce-arm true 0 #(struct:expr-false)) #(struct:expr-reduce-arm false 0 #(struct:expr-true))) #t))))) (max . (#(struct:expr-Pi mw #(struct:expr-Nat) #(struct:expr-Pi mw #(struct:expr-Nat) #(struct:expr-Nat))) . #(struct:expr-lam mw #(struct:expr-Nat) #(struct:expr-lam mw #(struct:expr-Nat) #(struct:expr-reduce #(struct:expr-app #(struct:expr-app #(struct:expr-fvar prologos::data::nat::le?) #(struct:expr-bvar 1)) #(struct:expr-bvar 0)) (#(struct:expr-reduce-arm true 0 #(struct:expr-bvar 0)) #(struct:expr-reduce-arm false 0 #(struct:expr-bvar 1))) #t))))) (min . (#(struct:expr-Pi mw #(struct:expr-Nat) #(struct:expr-Pi mw #(struct:expr-Nat) #(struct:expr-Nat))) . #(struct:expr-lam mw #(struct:expr-Nat) #(struct:expr-lam mw #(struct:expr-Nat) #(struct:expr-reduce #(struct:expr-app #(struct:expr-app #(struct:expr-fvar prologos::data::nat::le?) #(struct:expr-bvar 1)) #(struct:expr-bvar 0)) (#(struct:expr-reduce-arm true 0 #(struct:expr-bvar 1)) #(struct:expr-reduce-arm false 0 #(struct:expr-bvar 0))) #t))))) (mult . (#(struct:expr-Pi mw #(struct:expr-Nat) #(struct:expr-Pi mw #(struct:expr-Nat) #(struct:expr-Nat))) . #(struct:expr-lam mw #(struct:expr-Nat) #(struct:expr-lam mw #(struct:expr-Nat) #(struct:expr-reduce #(struct:expr-bvar 0) (#(struct:expr-reduce-arm zero 0 #(struct:expr-nat-val 0)) #(struct:expr-reduce-arm suc 1 #(struct:expr-app #(struct:expr-app #(struct:expr-fvar prologos::data::nat::add) #(struct:expr-bvar 2)) #(struct:expr-app #(struct:expr-app #(struct:expr-fvar prologos::data::nat::mult) #(struct:expr-bvar 2)) #(struct:expr-bvar 0))))) #t))))) (nat-eq? . (#(struct:expr-Pi mw #(struct:expr-Nat) #(struct:expr-Pi mw #(struct:expr-Nat) #(struct:expr-Bool))) . #(struct:expr-lam mw #(struct:expr-Nat) #(struct:expr-lam mw #(struct:expr-Nat) #(struct:expr-reduce #(struct:expr-app #(struct:expr-app #(struct:expr-fvar prologos::data::nat::le?) #(struct:expr-bvar 1)) #(struct:expr-bvar 0)) (#(struct:expr-reduce-arm true 0 #(struct:expr-app #(struct:expr-app #(struct:expr-fvar prologos::data::nat::le?) #(struct:expr-bvar 0)) #(struct:expr-bvar 1))) #(struct:expr-reduce-arm false 0 #(struct:expr-false))) #t))))) (on . (#(struct:expr-Pi m0 #(struct:expr-Type #(struct:lzero)) #(struct:expr-Pi m0 #(struct:expr-Type #(struct:lzero)) #(struct:expr-Pi m0 #(struct:expr-Type #(struct:lzero)) #(struct:expr-Pi mw #(struct:expr-Pi mw #(struct:expr-bvar 2) #(struct:expr-Pi mw #(struct:expr-bvar 3) #(struct:expr-bvar 3))) #(struct:expr-Pi mw #(struct:expr-Pi mw #(struct:expr-bvar 1) #(struct:expr-bvar 4)) #(struct:expr-Pi mw #(struct:expr-bvar 2) #(struct:expr-Pi mw #(struct:expr-bvar 3) #(struct:expr-bvar 5)))))))) . #(struct:expr-lam m0 #(struct:expr-Type #(struct:lzero)) #(struct:expr-lam m0 #(struct:expr-Type #(struct:lzero)) #(struct:expr-lam m0 #(struct:expr-Type #(struct:lzero)) #(struct:expr-lam mw #(struct:expr-Pi mw #(struct:expr-bvar 2) #(struct:expr-Pi mw #(struct:expr-bvar 3) #(struct:expr-bvar 3))) #(struct:expr-lam mw #(struct:expr-Pi mw #(struct:expr-bvar 1) #(struct:expr-bvar 4)) #(struct:expr-lam mw #(struct:expr-bvar 2) #(struct:expr-lam mw #(struct:expr-bvar 3) #(struct:expr-app #(struct:expr-app #(struct:expr-bvar 3) #(struct:expr-app #(struct:expr-bvar 2) #(struct:expr-bvar 1))) #(struct:expr-app #(struct:expr-bvar 2) #(struct:expr-bvar 0)))))))))))) (pow . (#(struct:expr-Pi mw #(struct:expr-Nat) #(struct:expr-Pi mw #(struct:expr-Nat) #(struct:expr-Nat))) . #(struct:expr-lam mw #(struct:expr-Nat) #(struct:expr-lam mw #(struct:expr-Nat) #(struct:expr-reduce #(struct:expr-bvar 0) (#(struct:expr-reduce-arm zero 0 #(struct:expr-nat-val 1)) #(struct:expr-reduce-arm suc 1 #(struct:expr-app #(struct:expr-app #(struct:expr-fvar prologos::data::nat::mult) #(struct:expr-bvar 2)) #(struct:expr-app #(struct:expr-app #(struct:expr-fvar prologos::data::nat::pow) #(struct:expr-bvar 2)) #(struct:expr-bvar 0))))) #t))))) (pred . (#(struct:expr-Pi mw #(struct:expr-Nat) #(struct:expr-Nat)) . #(struct:expr-lam mw #(struct:expr-Nat) #(struct:expr-reduce #(struct:expr-bvar 0) (#(struct:expr-reduce-arm zero 0 #(struct:expr-nat-val 0)) #(struct:expr-reduce-arm suc 1 #(struct:expr-bvar 0))) #t)))) (prologos::core::apply . (#(struct:expr-Pi m0 #(struct:expr-Type #(struct:lzero)) #(struct:expr-Pi m0 #(struct:expr-Type #(struct:lzero)) #(struct:expr-Pi mw #(struct:expr-Pi mw #(struct:expr-bvar 1) #(struct:expr-bvar 1)) #(struct:expr-Pi mw #(struct:expr-bvar 2) #(struct:expr-bvar 2))))) . #(struct:expr-lam m0 #(struct:expr-Type #(struct:lzero)) #(struct:expr-lam m0 #(struct:expr-Type #(struct:lzero)) #(struct:expr-lam mw #(struct:expr-Pi mw #(struct:expr-bvar 1) #(struct:expr-bvar 1)) #(struct:expr-lam mw #(struct:expr-bvar 2) #(struct:expr-app #(struct:expr-bvar 1) #(struct:expr-bvar 0)))))))) (prologos::core::compose . (#(struct:expr-Pi m0 #(struct:expr-Type #(struct:lzero)) #(struct:expr-Pi m0 #(struct:expr-Type #(struct:lzero)) #(struct:expr-Pi m0 #(struct:expr-Type #(struct:lzero)) #(struct:expr-Pi mw #(struct:expr-Pi mw #(struct:expr-bvar 2) #(struct:expr-bvar 2)) #(struct:expr-Pi mw #(struct:expr-Pi mw #(struct:expr-bvar 1) #(struct:expr-bvar 4)) #(struct:expr-Pi mw #(struct:expr-bvar 2) #(struct:expr-bvar 4))))))) . #(struct:expr-lam m0 #(struct:expr-Type #(struct:lzero)) #(struct:expr-lam m0 #(struct:expr-Type #(struct:lzero)) #(struct:expr-lam m0 #(struct:expr-Type #(struct:lzero)) #(struct:expr-lam mw #(struct:expr-Pi mw #(struct:expr-bvar 2) #(struct:expr-bvar 2)) #(struct:expr-lam mw #(struct:expr-Pi mw #(struct:expr-bvar 1) #(struct:expr-bvar 4)) #(struct:expr-lam mw #(struct:expr-bvar 2) #(struct:expr-app #(struct:expr-bvar 2) #(struct:expr-app #(struct:expr-bvar 1) #(struct:expr-bvar 0))))))))))) (prologos::core::const . (#(struct:expr-Pi m0 #(struct:expr-Type #(struct:lzero)) #(struct:expr-Pi m0 #(struct:expr-Type #(struct:lzero)) #(struct:expr-Pi mw #(struct:expr-bvar 1) #(struct:expr-Pi mw #(struct:expr-bvar 1) #(struct:expr-bvar 3))))) . #(struct:expr-lam m0 #(struct:expr-Type #(struct:lzero)) #(struct:expr-lam m0 #(struct:expr-Type #(struct:lzero)) #(struct:expr-lam mw #(struct:expr-bvar 1) #(struct:expr-lam mw #(struct:expr-bvar 1) #(struct:expr-bvar 1))))))) (prologos::core::flip . (#(struct:expr-Pi m0 #(struct:expr-Type #(struct:lzero)) #(struct:expr-Pi m0 #(struct:expr-Type #(struct:lzero)) #(struct:expr-Pi m0 #(struct:expr-Type #(struct:lzero)) #(struct:expr-Pi mw #(struct:expr-Pi mw #(struct:expr-bvar 2) #(struct:expr-Pi mw #(struct:expr-bvar 2) #(struct:expr-bvar 2))) #(struct:expr-Pi mw #(struct:expr-bvar 2) #(struct:expr-Pi mw #(struct:expr-bvar 4) #(struct:expr-bvar 3))))))) . #(struct:expr-lam m0 #(struct:expr-Type #(struct:lzero)) #(struct:expr-lam m0 #(struct:expr-Type #(struct:lzero)) #(struct:expr-lam m0 #(struct:expr-Type #(struct:lzero)) #(struct:expr-lam mw #(struct:expr-Pi mw #(struct:expr-bvar 2) #(struct:expr-Pi mw #(struct:expr-bvar 2) #(struct:expr-bvar 2))) #(struct:expr-lam mw #(struct:expr-bvar 2) #(struct:expr-lam mw #(struct:expr-bvar 4) #(struct:expr-app #(struct:expr-app #(struct:expr-bvar 2) #(struct:expr-bvar 0)) #(struct:expr-bvar 1)))))))))) (prologos::core::id . (#(struct:expr-Pi m0 #(struct:expr-Type #(struct:lzero)) #(struct:expr-Pi mw #(struct:expr-bvar 0) #(struct:expr-bvar 1))) . #(struct:expr-lam m0 #(struct:expr-Type #(struct:lzero)) #(struct:expr-lam mw #(struct:expr-bvar 0) #(struct:expr-bvar 0))))) (prologos::core::on . (#(struct:expr-Pi m0 #(struct:expr-Type #(struct:lzero)) #(struct:expr-Pi m0 #(struct:expr-Type #(struct:lzero)) #(struct:expr-Pi m0 #(struct:expr-Type #(struct:lzero)) #(struct:expr-Pi mw #(struct:expr-Pi mw #(struct:expr-bvar 2) #(struct:expr-Pi mw #(struct:expr-bvar 3) #(struct:expr-bvar 3))) #(struct:expr-Pi mw #(struct:expr-Pi mw #(struct:expr-bvar 1) #(struct:expr-bvar 4)) #(struct:expr-Pi mw #(struct:expr-bvar 2) #(struct:expr-Pi mw #(struct:expr-bvar 3) #(struct:expr-bvar 5)))))))) . #(struct:expr-lam m0 #(struct:expr-Type #(struct:lzero)) #(struct:expr-lam m0 #(struct:expr-Type #(struct:lzero)) #(struct:expr-lam m0 #(struct:expr-Type #(struct:lzero)) #(struct:expr-lam mw #(struct:expr-Pi mw #(struct:expr-bvar 2) #(struct:expr-Pi mw #(struct:expr-bvar 3) #(struct:expr-bvar 3))) #(struct:expr-lam mw #(struct:expr-Pi mw #(struct:expr-bvar 1) #(struct:expr-bvar 4)) #(struct:expr-lam mw #(struct:expr-bvar 2) #(struct:expr-lam mw #(struct:expr-bvar 3) #(struct:expr-app #(struct:expr-app #(struct:expr-bvar 3) #(struct:expr-app #(struct:expr-bvar 2) #(struct:expr-bvar 1))) #(struct:expr-app #(struct:expr-bvar 2) #(struct:expr-bvar 0)))))))))))) (prologos::data::nat::add . (#(struct:expr-Pi mw #(struct:expr-Nat) #(struct:expr-Pi mw #(struct:expr-Nat) #(struct:expr-Nat))) . #(struct:expr-lam mw #(struct:expr-Nat) #(struct:expr-lam mw #(struct:expr-Nat) #(struct:expr-reduce #(struct:expr-bvar 0) (#(struct:expr-reduce-arm zero 0 #(struct:expr-bvar 1)) #(struct:expr-reduce-arm suc 1 #(struct:expr-suc #(struct:expr-app #(struct:expr-app #(struct:expr-fvar prologos::data::nat::add) #(struct:expr-bvar 2)) #(struct:expr-bvar 0))))) #t))))) (prologos::data::nat::bool-to-nat . (#(struct:expr-Pi mw #(struct:expr-Bool) #(struct:expr-Nat)) . #(struct:expr-lam mw #(struct:expr-Bool) #(struct:expr-reduce #(struct:expr-bvar 0) (#(struct:expr-reduce-arm true 0 #(struct:expr-nat-val 1)) #(struct:expr-reduce-arm false 0 #(struct:expr-nat-val 0))) #t)))) (prologos::data::nat::clamp . (#(struct:expr-Pi mw #(struct:expr-Nat) #(struct:expr-Pi mw #(struct:expr-Nat) #(struct:expr-Pi mw #(struct:expr-Nat) #(struct:expr-Nat)))) . #(struct:expr-lam mw #(struct:expr-Nat) #(struct:expr-lam mw #(struct:expr-Nat) #(struct:expr-lam mw #(struct:expr-hole) #(struct:expr-app #(struct:expr-app #(struct:expr-fvar prologos::data::nat::max) #(struct:expr-bvar 2)) #(struct:expr-app #(struct:expr-app #(struct:expr-fvar prologos::data::nat::min) #(struct:expr-bvar 0)) #(struct:expr-bvar 1)))))))) (prologos::data::nat::double . (#(struct:expr-Pi mw #(struct:expr-Nat) #(struct:expr-Nat)) . #(struct:expr-lam mw #(struct:expr-Nat) #(struct:expr-reduce #(struct:expr-bvar 0) (#(struct:expr-reduce-arm zero 0 #(struct:expr-nat-val 0)) #(struct:expr-reduce-arm suc 1 #(struct:expr-suc #(struct:expr-suc #(struct:expr-app #(struct:expr-fvar prologos::data::nat::double) #(struct:expr-bvar 0)))))) #t)))) (prologos::data::nat::ge? . (#(struct:expr-Pi mw #(struct:expr-Nat) #(struct:expr-Pi mw #(struct:expr-Nat) #(struct:expr-Bool))) . #(struct:expr-lam mw #(struct:expr-Nat) #(struct:expr-lam mw #(struct:expr-Nat) #(struct:expr-app #(struct:expr-app #(struct:expr-fvar prologos::data::nat::le?) #(struct:expr-bvar 0)) #(struct:expr-bvar 1)))))) (prologos::data::nat::gt? . (#(struct:expr-Pi mw #(struct:expr-Nat) #(struct:expr-Pi mw #(struct:expr-Nat) #(struct:expr-Bool))) . #(struct:expr-lam mw #(struct:expr-Nat) #(struct:expr-lam mw #(struct:expr-Nat) #(struct:expr-app #(struct:expr-app #(struct:expr-fvar prologos::data::nat::lt?) #(struct:expr-bvar 0)) #(struct:expr-bvar 1)))))) (prologos::data::nat::le? . (#(struct:expr-Pi mw #(struct:expr-Nat) #(struct:expr-Pi mw #(struct:expr-Nat) #(struct:expr-Bool))) . #(struct:expr-lam mw #(struct:expr-Nat) #(struct:expr-lam mw #(struct:expr-Nat) #(struct:expr-app #(struct:expr-fvar prologos::data::nat::zero?) #(struct:expr-app #(struct:expr-app #(struct:expr-fvar prologos::data::nat::sub) #(struct:expr-bvar 1)) #(struct:expr-bvar 0))))))) (prologos::data::nat::lt? . (#(struct:expr-Pi mw #(struct:expr-Nat) #(struct:expr-Pi mw #(struct:expr-Nat) #(struct:expr-Bool))) . #(struct:expr-lam mw #(struct:expr-Nat) #(struct:expr-lam mw #(struct:expr-Nat) #(struct:expr-reduce #(struct:expr-app #(struct:expr-app #(struct:expr-fvar prologos::data::nat::le?) #(struct:expr-bvar 0)) #(struct:expr-bvar 1)) (#(struct:expr-reduce-arm true 0 #(struct:expr-false)) #(struct:expr-reduce-arm false 0 #(struct:expr-true))) #t))))) (prologos::data::nat::max . (#(struct:expr-Pi mw #(struct:expr-Nat) #(struct:expr-Pi mw #(struct:expr-Nat) #(struct:expr-Nat))) . #(struct:expr-lam mw #(struct:expr-Nat) #(struct:expr-lam mw #(struct:expr-Nat) #(struct:expr-reduce #(struct:expr-app #(struct:expr-app #(struct:expr-fvar prologos::data::nat::le?) #(struct:expr-bvar 1)) #(struct:expr-bvar 0)) (#(struct:expr-reduce-arm true 0 #(struct:expr-bvar 0)) #(struct:expr-reduce-arm false 0 #(struct:expr-bvar 1))) #t))))) (prologos::data::nat::min . (#(struct:expr-Pi mw #(struct:expr-Nat) #(struct:expr-Pi mw #(struct:expr-Nat) #(struct:expr-Nat))) . #(struct:expr-lam mw #(struct:expr-Nat) #(struct:expr-lam mw #(struct:expr-Nat) #(struct:expr-reduce #(struct:expr-app #(struct:expr-app #(struct:expr-fvar prologos::data::nat::le?) #(struct:expr-bvar 1)) #(struct:expr-bvar 0)) (#(struct:expr-reduce-arm true 0 #(struct:expr-bvar 1)) #(struct:expr-reduce-arm false 0 #(struct:expr-bvar 0))) #t))))) (prologos::data::nat::mult . (#(struct:expr-Pi mw #(struct:expr-Nat) #(struct:expr-Pi mw #(struct:expr-Nat) #(struct:expr-Nat))) . #(struct:expr-lam mw #(struct:expr-Nat) #(struct:expr-lam mw #(struct:expr-Nat) #(struct:expr-reduce #(struct:expr-bvar 0) (#(struct:expr-reduce-arm zero 0 #(struct:expr-nat-val 0)) #(struct:expr-reduce-arm suc 1 #(struct:expr-app #(struct:expr-app #(struct:expr-fvar prologos::data::nat::add) #(struct:expr-bvar 2)) #(struct:expr-app #(struct:expr-app #(struct:expr-fvar prologos::data::nat::mult) #(struct:expr-bvar 2)) #(struct:expr-bvar 0))))) #t))))) (prologos::data::nat::nat-eq? . (#(struct:expr-Pi mw #(struct:expr-Nat) #(struct:expr-Pi mw #(struct:expr-Nat) #(struct:expr-Bool))) . #(struct:expr-lam mw #(struct:expr-Nat) #(struct:expr-lam mw #(struct:expr-Nat) #(struct:expr-reduce #(struct:expr-app #(struct:expr-app #(struct:expr-fvar prologos::data::nat::le?) #(struct:expr-bvar 1)) #(struct:expr-bvar 0)) (#(struct:expr-reduce-arm true 0 #(struct:expr-app #(struct:expr-app #(struct:expr-fvar prologos::data::nat::le?) #(struct:expr-bvar 0)) #(struct:expr-bvar 1))) #(struct:expr-reduce-arm false 0 #(struct:expr-false))) #t))))) (prologos::data::nat::pow . (#(struct:expr-Pi mw #(struct:expr-Nat) #(struct:expr-Pi mw #(struct:expr-Nat) #(struct:expr-Nat))) . #(struct:expr-lam mw #(struct:expr-Nat) #(struct:expr-lam mw #(struct:expr-Nat) #(struct:expr-reduce #(struct:expr-bvar 0) (#(struct:expr-reduce-arm zero 0 #(struct:expr-nat-val 1)) #(struct:expr-reduce-arm suc 1 #(struct:expr-app #(struct:expr-app #(struct:expr-fvar prologos::data::nat::mult) #(struct:expr-bvar 2)) #(struct:expr-app #(struct:expr-app #(struct:expr-fvar prologos::data::nat::pow) #(struct:expr-bvar 2)) #(struct:expr-bvar 0))))) #t))))) (prologos::data::nat::pred . (#(struct:expr-Pi mw #(struct:expr-Nat) #(struct:expr-Nat)) . #(struct:expr-lam mw #(struct:expr-Nat) #(struct:expr-reduce #(struct:expr-bvar 0) (#(struct:expr-reduce-arm zero 0 #(struct:expr-nat-val 0)) #(struct:expr-reduce-arm suc 1 #(struct:expr-bvar 0))) #t)))) (prologos::data::nat::sub . (#(struct:expr-Pi mw #(struct:expr-Nat) #(struct:expr-Pi mw #(struct:expr-Nat) #(struct:expr-Nat))) . #(struct:expr-lam mw #(struct:expr-Nat) #(struct:expr-lam mw #(struct:expr-Nat) #(struct:expr-reduce #(struct:expr-bvar 0) (#(struct:expr-reduce-arm zero 0 #(struct:expr-bvar 1)) #(struct:expr-reduce-arm suc 1 #(struct:expr-app #(struct:expr-fvar prologos::data::nat::pred) #(struct:expr-app #(struct:expr-app #(struct:expr-fvar prologos::data::nat::sub) #(struct:expr-bvar 2)) #(struct:expr-bvar 0))))) #t))))) (prologos::data::nat::zero? . (#(struct:expr-Pi mw #(struct:expr-Nat) #(struct:expr-Bool)) . #(struct:expr-lam mw #(struct:expr-Nat) #(struct:expr-reduce #(struct:expr-bvar 0) (#(struct:expr-reduce-arm zero 0 #(struct:expr-true)) #(struct:expr-reduce-arm suc 1 #(struct:expr-false))) #t)))) (sub . (#(struct:expr-Pi mw #(struct:expr-Nat) #(struct:expr-Pi mw #(struct:expr-Nat) #(struct:expr-Nat))) . #(struct:expr-lam mw #(struct:expr-Nat) #(struct:expr-lam mw #(struct:expr-Nat) #(struct:expr-reduce #(struct:expr-bvar 0) (#(struct:expr-reduce-arm zero 0 #(struct:expr-bvar 1)) #(struct:expr-reduce-arm suc 1 #(struct:expr-app #(struct:expr-fvar prologos::data::nat::pred) #(struct:expr-app #(struct:expr-app #(struct:expr-fvar prologos::data::nat::sub) #(struct:expr-bvar 2)) #(struct:expr-bvar 0))))) #t))))) (zero? . (#(struct:expr-Pi mw #(struct:expr-Nat) #(struct:expr-Bool)) . #(struct:expr-lam mw #(struct:expr-Nat) #(struct:expr-reduce #(struct:expr-bvar 0) (#(struct:expr-reduce-arm zero 0 #(struct:expr-true)) #(struct:expr-reduce-arm suc 1 #(struct:expr-false))) #t))))) #hasheq((add . #(struct:spec-entry ((Nat Nat -> Nat)) #f #f #(struct:srcloc "" 0 0 0) () () #f #f)) (apply . #(struct:spec-entry (((A -> B) A -> B)) #f #f #(struct:srcloc "" 0 0 0) () ((A Type 0) (B Type 0)) #f #f)) (bool-to-nat . #(struct:spec-entry ((Bool -> Nat)) #f #f #(struct:srcloc "" 0 0 0) () () #f #f)) (clamp . #(struct:spec-entry ((Nat Nat -> Nat -> Nat)) #f #f #(struct:srcloc "" 0 0 0) () () #f #f)) (compose . #(struct:spec-entry (((B -> C) (A -> B) A -> C)) #f #f #(struct:srcloc "" 0 0 0) () ((B Type 0) (C Type 0) (A Type 0)) #f #f)) (const . #(struct:spec-entry ((A B -> A)) #f #f #(struct:srcloc "" 0 0 0) () ((A Type 0) (B Type 0)) #f #f)) (double . #(struct:spec-entry ((Nat -> Nat)) #f #f #(struct:srcloc "" 0 0 0) () () #f #f)) (flip . #(struct:spec-entry (((A -> B -> C) B A -> C)) #f #f #(struct:srcloc "" 0 0 0) () ((A Type 0) (B Type 0) (C Type 0)) #f #f)) (ge? . #(struct:spec-entry ((Nat Nat -> Bool)) #f #f #(struct:srcloc "" 0 0 0) () () #f #f)) (gt? . #(struct:spec-entry ((Nat Nat -> Bool)) #f #f #(struct:srcloc "" 0 0 0) () () #f #f)) (id . #(struct:spec-entry ((A -> A)) #f #f #(struct:srcloc "" 0 0 0) () ((A Type 0)) #f #f)) (le? . #(struct:spec-entry ((Nat Nat -> Bool)) #f #f #(struct:srcloc "" 0 0 0) () () #f #f)) (lt? . #(struct:spec-entry ((Nat Nat -> Bool)) #f #f #(struct:srcloc "" 0 0 0) () () #f #f)) (max . #(struct:spec-entry ((Nat Nat -> Nat)) #f #f #(struct:srcloc "" 0 0 0) () () #f #f)) (min . #(struct:spec-entry ((Nat Nat -> Nat)) #f #f #(struct:srcloc "" 0 0 0) () () #f #f)) (mult . #(struct:spec-entry ((Nat Nat -> Nat)) #f #f #(struct:srcloc "" 0 0 0) () () #f #f)) (nat-eq? . #(struct:spec-entry ((Nat Nat -> Bool)) #f #f #(struct:srcloc "" 0 0 0) () () #f #f)) (on . #(struct:spec-entry (((B -> B -> C) (A -> B) A A -> C)) #f #f #(struct:srcloc "" 0 0 0) () ((B Type 0) (C Type 0) (A Type 0)) #f #f)) (pow . #(struct:spec-entry ((Nat Nat -> Nat)) #f #f #(struct:srcloc "" 0 0 0) () () #f #f)) (pred . #(struct:spec-entry ((Nat -> Nat)) #f #f #(struct:srcloc "" 0 0 0) () () #f #f)) (sub . #(struct:spec-entry ((Nat Nat -> Nat)) #f #f #(struct:srcloc "" 0 0 0) () () #f #f)) (zero? . #(struct:spec-entry ((Nat -> Bool)) #f #f #(struct:srcloc "" 0 0 0) () () #f #f))) #hasheq((Ordering . #(struct:srcloc "/home/user/prologos/racket/prologos/lib/prologos/data/ordering.prologos" 8 0 40)) (add . #(struct:srcloc "/home/user/prologos/racket/prologos/lib/prologos/data/nat.prologos" 10 0 69)) (and . #(struct:srcloc "/home/user/prologos/racket/prologos/lib/prologos/data/bool.prologos" 17 0 62)) (apply . #(struct:srcloc "/home/user/prologos/racket/prologos/lib/prologos/core.prologos" 25 0 23)) (bool-eq . #(struct:srcloc "/home/user/prologos/racket/prologos/lib/prologos/data/bool.prologos" 38 0 66)) (bool-to-nat . #(struct:srcloc "/home/user/prologos/racket/prologos/lib/prologos/data/nat.prologos" 119 0 74)) (clamp . #(struct:srcloc "/home/user/prologos/racket/prologos/lib/prologos/data/nat.prologos" 126 0 54)) (compose . #(struct:srcloc "/home/user/prologos/racket/prologos/lib/prologos/core.prologos" 20 0 29)) (const . #(struct:srcloc "/home/user/prologos/racket/prologos/lib/prologos/core.prologos" 15 0 20)) (double . #(struct:srcloc "/home/user/prologos/racket/prologos/lib/prologos/data/nat.prologos" 24 0 79)) (eq-ord . #(struct:srcloc "/home/user/prologos/racket/prologos/lib/prologos/data/ordering.prologos" 8 0 40)) (flip . #(struct:srcloc "/home/user/prologos/racket/prologos/lib/prologos/core.prologos" 30 0 26)) (ge? . #(struct:srcloc "/home/user/prologos/racket/prologos/lib/prologos/data/nat.prologos" 85 0 24)) (gt-ord . #(struct:srcloc "/home/user/prologos/racket/prologos/lib/prologos/data/ordering.prologos" 8 0 40)) (gt? . #(struct:srcloc "/home/user/prologos/racket/prologos/lib/prologos/data/nat.prologos" 80 0 24)) (id . #(struct:srcloc "/home/user/prologos/racket/prologos/lib/prologos/core.prologos" 10 0 15)) (implies . #(struct:srcloc "/home/user/prologos/racket/prologos/lib/prologos/data/bool.prologos" 59 0 33)) (le? . #(struct:srcloc "/home/user/prologos/racket/prologos/lib/prologos/data/nat.prologos" 68 0 31)) (lt-ord . #(struct:srcloc "/home/user/prologos/racket/prologos/lib/prologos/data/ordering.prologos" 8 0 40)) (lt? . #(struct:srcloc "/home/user/prologos/racket/prologos/lib/prologos/data/nat.prologos" 73 0 73)) (max . #(struct:srcloc "/home/user/prologos/racket/prologos/lib/prologos/data/nat.prologos" 108 0 66)) (min . #(struct:srcloc "/home/user/prologos/racket/prologos/lib/prologos/data/nat.prologos" 101 0 66)) (mult . #(struct:srcloc "/home/user/prologos/racket/prologos/lib/prologos/data/nat.prologos" 17 0 76)) (nand . #(struct:srcloc "/home/user/prologos/racket/prologos/lib/prologos/data/bool.prologos" 49 0 30)) (nat-eq? . #(struct:srcloc "/home/user/prologos/racket/prologos/lib/prologos/data/nat.prologos" 90 0 80)) (nor . #(struct:srcloc "/home/user/prologos/racket/prologos/lib/prologos/data/bool.prologos" 54 0 28)) (not . #(struct:srcloc "/home/user/prologos/racket/prologos/lib/prologos/data/bool.prologos" 10 0 63)) (on . #(struct:srcloc "/home/user/prologos/racket/prologos/lib/prologos/core.prologos" 36 0 32)) (or . #(struct:srcloc "/home/user/prologos/racket/prologos/lib/prologos/data/bool.prologos" 24 0 60)) (pow . #(struct:srcloc "/home/user/prologos/racket/prologos/lib/prologos/data/nat.prologos" 57 0 92)) (pred . #(struct:srcloc "/home/user/prologos/racket/prologos/lib/prologos/data/nat.prologos" 31 0 60)) (prologos::core::apply . #(struct:srcloc "/home/user/prologos/racket/prologos/lib/prologos/core.prologos" 25 0 23)) (prologos::core::compose . #(struct:srcloc "/home/user/prologos/racket/prologos/lib/prologos/core.prologos" 20 0 29)) (prologos::core::const . #(struct:srcloc "/home/user/prologos/racket/prologos/lib/prologos/core.prologos" 15 0 20)) (prologos::core::flip . #(struct:srcloc "/home/user/prologos/racket/prologos/lib/prologos/core.prologos" 30 0 26)) (prologos::core::id . #(struct:srcloc "/home/user/prologos/racket/prologos/lib/prologos/core.prologos" 10 0 15)) (prologos::core::on . #(struct:srcloc "/home/user/prologos/racket/prologos/lib/prologos/core.prologos" 36 0 32)) (prologos::data::bool::and . #(struct:srcloc "/home/user/prologos/racket/prologos/lib/prologos/data/bool.prologos" 17 0 62)) (prologos::data::bool::bool-eq . #(struct:srcloc "/home/user/prologos/racket/prologos/lib/prologos/data/bool.prologos" 38 0 66)) (prologos::data::bool::implies . #(struct:srcloc "/home/user/prologos/racket/prologos/lib/prologos/data/bool.prologos" 59 0 33)) (prologos::data::bool::nand . #(struct:srcloc "/home/user/prologos/racket/prologos/lib/prologos/data/bool.prologos" 49 0 30)) (prologos::data::bool::nor . #(struct:srcloc "/home/user/prologos/racket/prologos/lib/prologos/data/bool.prologos" 54 0 28)) (prologos::data::bool::not . #(struct:srcloc "/home/user/prologos/racket/prologos/lib/prologos/data/bool.prologos" 10 0 63)) (prologos::data::bool::or . #(struct:srcloc "/home/user/prologos/racket/prologos/lib/prologos/data/bool.prologos" 24 0 60)) (prologos::data::bool::xor . #(struct:srcloc "/home/user/prologos/racket/prologos/lib/prologos/data/bool.prologos" 31 0 62)) (prologos::data::nat::add . #(struct:srcloc "/home/user/prologos/racket/prologos/lib/prologos/data/nat.prologos" 10 0 69)) (prologos::data::nat::bool-to-nat . #(struct:srcloc "/home/user/prologos/racket/prologos/lib/prologos/data/nat.prologos" 119 0 74)) (prologos::data::nat::clamp . #(struct:srcloc "/home/user/prologos/racket/prologos/lib/prologos/data/nat.prologos" 126 0 54)) (prologos::data::nat::double . #(struct:srcloc "/home/user/prologos/racket/prologos/lib/prologos/data/nat.prologos" 24 0 79)) (prologos::data::nat::ge? . #(struct:srcloc "/home/user/prologos/racket/prologos/lib/prologos/data/nat.prologos" 85 0 24)) (prologos::data::nat::gt? . #(struct:srcloc "/home/user/prologos/racket/prologos/lib/prologos/data/nat.prologos" 80 0 24)) (prologos::data::nat::le? . #(struct:srcloc "/home/user/prologos/racket/prologos/lib/prologos/data/nat.prologos" 68 0 31)) (prologos::data::nat::lt? . #(struct:srcloc "/home/user/prologos/racket/prologos/lib/prologos/data/nat.prologos" 73 0 73)) (prologos::data::nat::max . #(struct:srcloc "/home/user/prologos/racket/prologos/lib/prologos/data/nat.prologos" 108 0 66)) (prologos::data::nat::min . #(struct:srcloc "/home/user/prologos/racket/prologos/lib/prologos/data/nat.prologos" 101 0 66)) (prologos::data::nat::mult . #(struct:srcloc "/home/user/prologos/racket/prologos/lib/prologos/data/nat.prologos" 17 0 76)) (prologos::data::nat::nat-eq? . #(struct:srcloc "/home/user/prologos/racket/prologos/lib/prologos/data/nat.prologos" 90 0 80)) (prologos::data::nat::pow . #(struct:srcloc "/home/user/prologos/racket/prologos/lib/prologos/data/nat.prologos" 57 0 92)) (prologos::data::nat::pred . #(struct:srcloc "/home/user/prologos/racket/prologos/lib/prologos/data/nat.prologos" 31 0 60)) (prologos::data::nat::sub . #(struct:srcloc "/home/user/prologos/racket/prologos/lib/prologos/data/nat.prologos" 50 0 70)) (prologos::data::nat::zero? . #(struct:srcloc "/home/user/prologos/racket/prologos/lib/prologos/data/nat.prologos" 38 0 65)) (prologos::data::ordering::Ordering . #(struct:srcloc "/home/user/prologos/racket/prologos/lib/prologos/data/ordering.prologos" 8 0 40)) (prologos::data::ordering::eq-ord . #(struct:srcloc "/home/user/prologos/racket/prologos/lib/prologos/data/ordering.prologos" 8 0 40)) (prologos::data::ordering::gt-ord . #(struct:srcloc "/home/user/prologos/racket/prologos/lib/prologos/data/ordering.prologos" 8 0 40)) (prologos::data::ordering::lt-ord . #(struct:srcloc "/home/user/prologos/racket/prologos/lib/prologos/data/ordering.prologos" 8 0 40)) (sub . #(struct:srcloc "/home/user/prologos/racket/prologos/lib/prologos/data/nat.prologos" 50 0 70)) (xor . #(struct:srcloc "/home/user/prologos/racket/prologos/lib/prologos/data/bool.prologos" 31 0 62)) (zero? . #(struct:srcloc "/home/user/prologos/racket/prologos/lib/prologos/data/nat.prologos" 38 0 65))) (add mult double pred zero? sub pow le? lt? gt? ge? nat-eq? min max bool-to-nat clamp) "prologos::data::nat" #hasheq(($compose . expand-compose-sexp) ($list-literal . expand-list-literal) ($lseq-literal . expand-lseq-literal) ($mixfix . expand-mixfix-form) ($pipe-gt . expand-pipe-block) ($quasiquote . expand-quasiquote) ($quote . expand-quote) (cond . expand-cond) (do . expand-do) (if . expand-if) (let . expand-let) (pipe2 . #(struct:preparse-macro pipe2 (pipe2 $x $f $g) ($g ($f $x)))) (pipe3 . #(struct:preparse-macro pipe3 (pipe3 $x $f $g $h) ($h ($g ($f $x))))) (twice . #(struct:preparse-macro twice (twice $f $x) ($f ($f $x)))) (unless . #(struct:preparse-macro unless (unless $cond $body) (if $cond unit $body))) (when . #(struct:preparse-macro when (when $cond $body) (if $cond $body unit))) (with-transient . expand-with-transient)) #hasheq((eq-ord . #(struct:ctor-meta Ordering () () () 1)) (false . #(struct:ctor-meta Bool () () () 1)) (gt-ord . #(struct:ctor-meta Ordering () () () 2)) (lt-ord . #(struct:ctor-meta Ordering () () () 0)) (suc . #(struct:ctor-meta Nat () (Nat) (#t) 1)) (true . #(struct:ctor-meta Bool () () () 0)) (unit . #(struct:ctor-meta Unit () () () 0)) (zero . #(struct:ctor-meta Nat () () () 0))) #hasheq((Bool . (true false)) (Nat . (zero suc)) (Ordering . (lt-ord eq-ord gt-ord)) (Unit . (unit))) #hasheq() #hasheq(((Nat . Int) . #t) ((Posit8 . Posit64) . #t) ((Posit8 . Posit32) . #t) ((Posit32 . Posit64) . #t) ((Nat . Rat) . #t) ((Posit8 . Posit16) . #t) ((Posit16 . Posit64) . #t) ((Int . Rat) . #t) ((Posit16 . Posit32) . #t)) #hasheq() #hasheq() #hasheq() #hasheq() #hasheq() #hasheq() #hasheq() #hasheq() #hasheq((add . (x y)) (and . (a b)) (apply . (A B f x)) (bool-eq . (a b)) (bool-to-nat . (b)) (clamp . (low high)) (compose . (B C A g f x)) (const . (A B x _)) (double . (n)) (flip . (A B C f b a)) (ge? . (x y)) (gt? . (x y)) (id . (A x)) (implies . (a b)) (le? . (x y)) (lt? . (x y)) (max . (x y)) (min . (x y)) (mult . (x y)) (nand . (a b)) (nat-eq? . (x y)) (nor . (a b)) (not . (b)) (on . (B C A f g x y)) (or . (a b)) (pow . (base exp)) (pred . (n)) (sub . (x y)) (xor . (a b)) (zero? . (n))) #hasheq() #hasheq() #hasheq()) \ No newline at end of file From c9d99171c5971c0a10d1794308da7b3d2e8af5c6 Mon Sep 17 00:00:00 2001 From: Claude Date: Tue, 28 Apr 2026 07:20:12 +0000 Subject: [PATCH 4/6] chore: drop last-run-summary.txt churn from this PR MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Run-artifact diff isn't relevant to the FFI work — restore the file to its origin/main state so the PR shows only the FFI implementation + tests + the timings.jsonl entry. A follow-up PR will gitignore last-run-summary.txt entirely so this churn stops appearing on every branch. --- racket/prologos/data/benchmarks/last-run-summary.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/racket/prologos/data/benchmarks/last-run-summary.txt b/racket/prologos/data/benchmarks/last-run-summary.txt index 95c23e1a5..f641c27a7 100644 --- a/racket/prologos/data/benchmarks/last-run-summary.txt +++ b/racket/prologos/data/benchmarks/last-run-summary.txt @@ -1 +1 @@ -114 tests in 8.2s (3 files, 3 workers, all pass) +7529 tests in 124.6s (383 files, 10 workers, all pass) From e65551eb5f06f879f0a3db963da6fcd69db75786 Mon Sep 17 00:00:00 2001 From: Claude Date: Tue, 28 Apr 2026 21:03:40 +0000 Subject: [PATCH 5/6] chore: drop nat.pnet cache artifact from this PR MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Per copilot review on PR #33: this .pnet file is regenerated on every prelude load and contains machine-local absolute paths and nondeterministic hasheq ordering. Unrelated to the FFI work — restore to origin/main. If the cache content needs to be refreshed it should land in a controlled regeneration commit, not as drive-by churn from a Racket-version bump. --- racket/prologos/data/cache/pnet/prologos/data/nat.pnet | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/racket/prologos/data/cache/pnet/prologos/data/nat.pnet b/racket/prologos/data/cache/pnet/prologos/data/nat.pnet index c969d1c93..bbb45dc37 100644 --- a/racket/prologos/data/cache/pnet/prologos/data/nat.pnet +++ b/racket/prologos/data/cache/pnet/prologos/data/nat.pnet @@ -1 +1 @@ -(1 "/home/user/prologos/racket/prologos/lib/prologos/data/nat.prologos:1776910266" #hasheq((add . (#(struct:expr-Pi mw #(struct:expr-Nat) #(struct:expr-Pi mw #(struct:expr-Nat) #(struct:expr-Nat))) . #(struct:expr-lam mw #(struct:expr-Nat) #(struct:expr-lam mw #(struct:expr-Nat) #(struct:expr-reduce #(struct:expr-bvar 0) (#(struct:expr-reduce-arm zero 0 #(struct:expr-bvar 1)) #(struct:expr-reduce-arm suc 1 #(struct:expr-suc #(struct:expr-app #(struct:expr-app #(struct:expr-fvar prologos::data::nat::add) #(struct:expr-bvar 2)) #(struct:expr-bvar 0))))) #t))))) (apply . (#(struct:expr-Pi m0 #(struct:expr-Type #(struct:lzero)) #(struct:expr-Pi m0 #(struct:expr-Type #(struct:lzero)) #(struct:expr-Pi mw #(struct:expr-Pi mw #(struct:expr-bvar 1) #(struct:expr-bvar 1)) #(struct:expr-Pi mw #(struct:expr-bvar 2) #(struct:expr-bvar 2))))) . #(struct:expr-lam m0 #(struct:expr-Type #(struct:lzero)) #(struct:expr-lam m0 #(struct:expr-Type #(struct:lzero)) #(struct:expr-lam mw #(struct:expr-Pi mw #(struct:expr-bvar 1) #(struct:expr-bvar 1)) #(struct:expr-lam mw #(struct:expr-bvar 2) #(struct:expr-app #(struct:expr-bvar 1) #(struct:expr-bvar 0)))))))) (bool-to-nat . (#(struct:expr-Pi mw #(struct:expr-Bool) #(struct:expr-Nat)) . #(struct:expr-lam mw #(struct:expr-Bool) #(struct:expr-reduce #(struct:expr-bvar 0) (#(struct:expr-reduce-arm true 0 #(struct:expr-nat-val 1)) #(struct:expr-reduce-arm false 0 #(struct:expr-nat-val 0))) #t)))) (clamp . (#(struct:expr-Pi mw #(struct:expr-Nat) #(struct:expr-Pi mw #(struct:expr-Nat) #(struct:expr-Pi mw #(struct:expr-Nat) #(struct:expr-Nat)))) . #(struct:expr-lam mw #(struct:expr-Nat) #(struct:expr-lam mw #(struct:expr-Nat) #(struct:expr-lam mw #(struct:expr-hole) #(struct:expr-app #(struct:expr-app #(struct:expr-fvar prologos::data::nat::max) #(struct:expr-bvar 2)) #(struct:expr-app #(struct:expr-app #(struct:expr-fvar prologos::data::nat::min) #(struct:expr-bvar 0)) #(struct:expr-bvar 1)))))))) (compose . (#(struct:expr-Pi m0 #(struct:expr-Type #(struct:lzero)) #(struct:expr-Pi m0 #(struct:expr-Type #(struct:lzero)) #(struct:expr-Pi m0 #(struct:expr-Type #(struct:lzero)) #(struct:expr-Pi mw #(struct:expr-Pi mw #(struct:expr-bvar 2) #(struct:expr-bvar 2)) #(struct:expr-Pi mw #(struct:expr-Pi mw #(struct:expr-bvar 1) #(struct:expr-bvar 4)) #(struct:expr-Pi mw #(struct:expr-bvar 2) #(struct:expr-bvar 4))))))) . #(struct:expr-lam m0 #(struct:expr-Type #(struct:lzero)) #(struct:expr-lam m0 #(struct:expr-Type #(struct:lzero)) #(struct:expr-lam m0 #(struct:expr-Type #(struct:lzero)) #(struct:expr-lam mw #(struct:expr-Pi mw #(struct:expr-bvar 2) #(struct:expr-bvar 2)) #(struct:expr-lam mw #(struct:expr-Pi mw #(struct:expr-bvar 1) #(struct:expr-bvar 4)) #(struct:expr-lam mw #(struct:expr-bvar 2) #(struct:expr-app #(struct:expr-bvar 2) #(struct:expr-app #(struct:expr-bvar 1) #(struct:expr-bvar 0))))))))))) (const . (#(struct:expr-Pi m0 #(struct:expr-Type #(struct:lzero)) #(struct:expr-Pi m0 #(struct:expr-Type #(struct:lzero)) #(struct:expr-Pi mw #(struct:expr-bvar 1) #(struct:expr-Pi mw #(struct:expr-bvar 1) #(struct:expr-bvar 3))))) . #(struct:expr-lam m0 #(struct:expr-Type #(struct:lzero)) #(struct:expr-lam m0 #(struct:expr-Type #(struct:lzero)) #(struct:expr-lam mw #(struct:expr-bvar 1) #(struct:expr-lam mw #(struct:expr-bvar 1) #(struct:expr-bvar 1))))))) (double . (#(struct:expr-Pi mw #(struct:expr-Nat) #(struct:expr-Nat)) . #(struct:expr-lam mw #(struct:expr-Nat) #(struct:expr-reduce #(struct:expr-bvar 0) (#(struct:expr-reduce-arm zero 0 #(struct:expr-nat-val 0)) #(struct:expr-reduce-arm suc 1 #(struct:expr-suc #(struct:expr-suc #(struct:expr-app #(struct:expr-fvar prologos::data::nat::double) #(struct:expr-bvar 0)))))) #t)))) (flip . (#(struct:expr-Pi m0 #(struct:expr-Type #(struct:lzero)) #(struct:expr-Pi m0 #(struct:expr-Type #(struct:lzero)) #(struct:expr-Pi m0 #(struct:expr-Type #(struct:lzero)) #(struct:expr-Pi mw #(struct:expr-Pi mw #(struct:expr-bvar 2) #(struct:expr-Pi mw #(struct:expr-bvar 2) #(struct:expr-bvar 2))) #(struct:expr-Pi mw #(struct:expr-bvar 2) #(struct:expr-Pi mw #(struct:expr-bvar 4) #(struct:expr-bvar 3))))))) . #(struct:expr-lam m0 #(struct:expr-Type #(struct:lzero)) #(struct:expr-lam m0 #(struct:expr-Type #(struct:lzero)) #(struct:expr-lam m0 #(struct:expr-Type #(struct:lzero)) #(struct:expr-lam mw #(struct:expr-Pi mw #(struct:expr-bvar 2) #(struct:expr-Pi mw #(struct:expr-bvar 2) #(struct:expr-bvar 2))) #(struct:expr-lam mw #(struct:expr-bvar 2) #(struct:expr-lam mw #(struct:expr-bvar 4) #(struct:expr-app #(struct:expr-app #(struct:expr-bvar 2) #(struct:expr-bvar 0)) #(struct:expr-bvar 1)))))))))) (ge? . (#(struct:expr-Pi mw #(struct:expr-Nat) #(struct:expr-Pi mw #(struct:expr-Nat) #(struct:expr-Bool))) . #(struct:expr-lam mw #(struct:expr-Nat) #(struct:expr-lam mw #(struct:expr-Nat) #(struct:expr-app #(struct:expr-app #(struct:expr-fvar prologos::data::nat::le?) #(struct:expr-bvar 0)) #(struct:expr-bvar 1)))))) (gt? . (#(struct:expr-Pi mw #(struct:expr-Nat) #(struct:expr-Pi mw #(struct:expr-Nat) #(struct:expr-Bool))) . #(struct:expr-lam mw #(struct:expr-Nat) #(struct:expr-lam mw #(struct:expr-Nat) #(struct:expr-app #(struct:expr-app #(struct:expr-fvar prologos::data::nat::lt?) #(struct:expr-bvar 0)) #(struct:expr-bvar 1)))))) (id . (#(struct:expr-Pi m0 #(struct:expr-Type #(struct:lzero)) #(struct:expr-Pi mw #(struct:expr-bvar 0) #(struct:expr-bvar 1))) . #(struct:expr-lam m0 #(struct:expr-Type #(struct:lzero)) #(struct:expr-lam mw #(struct:expr-bvar 0) #(struct:expr-bvar 0))))) (le? . (#(struct:expr-Pi mw #(struct:expr-Nat) #(struct:expr-Pi mw #(struct:expr-Nat) #(struct:expr-Bool))) . #(struct:expr-lam mw #(struct:expr-Nat) #(struct:expr-lam mw #(struct:expr-Nat) #(struct:expr-app #(struct:expr-fvar prologos::data::nat::zero?) #(struct:expr-app #(struct:expr-app #(struct:expr-fvar prologos::data::nat::sub) #(struct:expr-bvar 1)) #(struct:expr-bvar 0))))))) (lt? . (#(struct:expr-Pi mw #(struct:expr-Nat) #(struct:expr-Pi mw #(struct:expr-Nat) #(struct:expr-Bool))) . #(struct:expr-lam mw #(struct:expr-Nat) #(struct:expr-lam mw #(struct:expr-Nat) #(struct:expr-reduce #(struct:expr-app #(struct:expr-app #(struct:expr-fvar prologos::data::nat::le?) #(struct:expr-bvar 0)) #(struct:expr-bvar 1)) (#(struct:expr-reduce-arm true 0 #(struct:expr-false)) #(struct:expr-reduce-arm false 0 #(struct:expr-true))) #t))))) (max . (#(struct:expr-Pi mw #(struct:expr-Nat) #(struct:expr-Pi mw #(struct:expr-Nat) #(struct:expr-Nat))) . #(struct:expr-lam mw #(struct:expr-Nat) #(struct:expr-lam mw #(struct:expr-Nat) #(struct:expr-reduce #(struct:expr-app #(struct:expr-app #(struct:expr-fvar prologos::data::nat::le?) #(struct:expr-bvar 1)) #(struct:expr-bvar 0)) (#(struct:expr-reduce-arm true 0 #(struct:expr-bvar 0)) #(struct:expr-reduce-arm false 0 #(struct:expr-bvar 1))) #t))))) (min . (#(struct:expr-Pi mw #(struct:expr-Nat) #(struct:expr-Pi mw #(struct:expr-Nat) #(struct:expr-Nat))) . #(struct:expr-lam mw #(struct:expr-Nat) #(struct:expr-lam mw #(struct:expr-Nat) #(struct:expr-reduce #(struct:expr-app #(struct:expr-app #(struct:expr-fvar prologos::data::nat::le?) #(struct:expr-bvar 1)) #(struct:expr-bvar 0)) (#(struct:expr-reduce-arm true 0 #(struct:expr-bvar 1)) #(struct:expr-reduce-arm false 0 #(struct:expr-bvar 0))) #t))))) (mult . (#(struct:expr-Pi mw #(struct:expr-Nat) #(struct:expr-Pi mw #(struct:expr-Nat) #(struct:expr-Nat))) . #(struct:expr-lam mw #(struct:expr-Nat) #(struct:expr-lam mw #(struct:expr-Nat) #(struct:expr-reduce #(struct:expr-bvar 0) (#(struct:expr-reduce-arm zero 0 #(struct:expr-nat-val 0)) #(struct:expr-reduce-arm suc 1 #(struct:expr-app #(struct:expr-app #(struct:expr-fvar prologos::data::nat::add) #(struct:expr-bvar 2)) #(struct:expr-app #(struct:expr-app #(struct:expr-fvar prologos::data::nat::mult) #(struct:expr-bvar 2)) #(struct:expr-bvar 0))))) #t))))) (nat-eq? . (#(struct:expr-Pi mw #(struct:expr-Nat) #(struct:expr-Pi mw #(struct:expr-Nat) #(struct:expr-Bool))) . #(struct:expr-lam mw #(struct:expr-Nat) #(struct:expr-lam mw #(struct:expr-Nat) #(struct:expr-reduce #(struct:expr-app #(struct:expr-app #(struct:expr-fvar prologos::data::nat::le?) #(struct:expr-bvar 1)) #(struct:expr-bvar 0)) (#(struct:expr-reduce-arm true 0 #(struct:expr-app #(struct:expr-app #(struct:expr-fvar prologos::data::nat::le?) #(struct:expr-bvar 0)) #(struct:expr-bvar 1))) #(struct:expr-reduce-arm false 0 #(struct:expr-false))) #t))))) (on . (#(struct:expr-Pi m0 #(struct:expr-Type #(struct:lzero)) #(struct:expr-Pi m0 #(struct:expr-Type #(struct:lzero)) #(struct:expr-Pi m0 #(struct:expr-Type #(struct:lzero)) #(struct:expr-Pi mw #(struct:expr-Pi mw #(struct:expr-bvar 2) #(struct:expr-Pi mw #(struct:expr-bvar 3) #(struct:expr-bvar 3))) #(struct:expr-Pi mw #(struct:expr-Pi mw #(struct:expr-bvar 1) #(struct:expr-bvar 4)) #(struct:expr-Pi mw #(struct:expr-bvar 2) #(struct:expr-Pi mw #(struct:expr-bvar 3) #(struct:expr-bvar 5)))))))) . #(struct:expr-lam m0 #(struct:expr-Type #(struct:lzero)) #(struct:expr-lam m0 #(struct:expr-Type #(struct:lzero)) #(struct:expr-lam m0 #(struct:expr-Type #(struct:lzero)) #(struct:expr-lam mw #(struct:expr-Pi mw #(struct:expr-bvar 2) #(struct:expr-Pi mw #(struct:expr-bvar 3) #(struct:expr-bvar 3))) #(struct:expr-lam mw #(struct:expr-Pi mw #(struct:expr-bvar 1) #(struct:expr-bvar 4)) #(struct:expr-lam mw #(struct:expr-bvar 2) #(struct:expr-lam mw #(struct:expr-bvar 3) #(struct:expr-app #(struct:expr-app #(struct:expr-bvar 3) #(struct:expr-app #(struct:expr-bvar 2) #(struct:expr-bvar 1))) #(struct:expr-app #(struct:expr-bvar 2) #(struct:expr-bvar 0)))))))))))) (pow . (#(struct:expr-Pi mw #(struct:expr-Nat) #(struct:expr-Pi mw #(struct:expr-Nat) #(struct:expr-Nat))) . #(struct:expr-lam mw #(struct:expr-Nat) #(struct:expr-lam mw #(struct:expr-Nat) #(struct:expr-reduce #(struct:expr-bvar 0) (#(struct:expr-reduce-arm zero 0 #(struct:expr-nat-val 1)) #(struct:expr-reduce-arm suc 1 #(struct:expr-app #(struct:expr-app #(struct:expr-fvar prologos::data::nat::mult) #(struct:expr-bvar 2)) #(struct:expr-app #(struct:expr-app #(struct:expr-fvar prologos::data::nat::pow) #(struct:expr-bvar 2)) #(struct:expr-bvar 0))))) #t))))) (pred . (#(struct:expr-Pi mw #(struct:expr-Nat) #(struct:expr-Nat)) . #(struct:expr-lam mw #(struct:expr-Nat) #(struct:expr-reduce #(struct:expr-bvar 0) (#(struct:expr-reduce-arm zero 0 #(struct:expr-nat-val 0)) #(struct:expr-reduce-arm suc 1 #(struct:expr-bvar 0))) #t)))) (prologos::core::apply . (#(struct:expr-Pi m0 #(struct:expr-Type #(struct:lzero)) #(struct:expr-Pi m0 #(struct:expr-Type #(struct:lzero)) #(struct:expr-Pi mw #(struct:expr-Pi mw #(struct:expr-bvar 1) #(struct:expr-bvar 1)) #(struct:expr-Pi mw #(struct:expr-bvar 2) #(struct:expr-bvar 2))))) . #(struct:expr-lam m0 #(struct:expr-Type #(struct:lzero)) #(struct:expr-lam m0 #(struct:expr-Type #(struct:lzero)) #(struct:expr-lam mw #(struct:expr-Pi mw #(struct:expr-bvar 1) #(struct:expr-bvar 1)) #(struct:expr-lam mw #(struct:expr-bvar 2) #(struct:expr-app #(struct:expr-bvar 1) #(struct:expr-bvar 0)))))))) (prologos::core::compose . (#(struct:expr-Pi m0 #(struct:expr-Type #(struct:lzero)) #(struct:expr-Pi m0 #(struct:expr-Type #(struct:lzero)) #(struct:expr-Pi m0 #(struct:expr-Type #(struct:lzero)) #(struct:expr-Pi mw #(struct:expr-Pi mw #(struct:expr-bvar 2) #(struct:expr-bvar 2)) #(struct:expr-Pi mw #(struct:expr-Pi mw #(struct:expr-bvar 1) #(struct:expr-bvar 4)) #(struct:expr-Pi mw #(struct:expr-bvar 2) #(struct:expr-bvar 4))))))) . #(struct:expr-lam m0 #(struct:expr-Type #(struct:lzero)) #(struct:expr-lam m0 #(struct:expr-Type #(struct:lzero)) #(struct:expr-lam m0 #(struct:expr-Type #(struct:lzero)) #(struct:expr-lam mw #(struct:expr-Pi mw #(struct:expr-bvar 2) #(struct:expr-bvar 2)) #(struct:expr-lam mw #(struct:expr-Pi mw #(struct:expr-bvar 1) #(struct:expr-bvar 4)) #(struct:expr-lam mw #(struct:expr-bvar 2) #(struct:expr-app #(struct:expr-bvar 2) #(struct:expr-app #(struct:expr-bvar 1) #(struct:expr-bvar 0))))))))))) (prologos::core::const . (#(struct:expr-Pi m0 #(struct:expr-Type #(struct:lzero)) #(struct:expr-Pi m0 #(struct:expr-Type #(struct:lzero)) #(struct:expr-Pi mw #(struct:expr-bvar 1) #(struct:expr-Pi mw #(struct:expr-bvar 1) #(struct:expr-bvar 3))))) . #(struct:expr-lam m0 #(struct:expr-Type #(struct:lzero)) #(struct:expr-lam m0 #(struct:expr-Type #(struct:lzero)) #(struct:expr-lam mw #(struct:expr-bvar 1) #(struct:expr-lam mw #(struct:expr-bvar 1) #(struct:expr-bvar 1))))))) (prologos::core::flip . (#(struct:expr-Pi m0 #(struct:expr-Type #(struct:lzero)) #(struct:expr-Pi m0 #(struct:expr-Type #(struct:lzero)) #(struct:expr-Pi m0 #(struct:expr-Type #(struct:lzero)) #(struct:expr-Pi mw #(struct:expr-Pi mw #(struct:expr-bvar 2) #(struct:expr-Pi mw #(struct:expr-bvar 2) #(struct:expr-bvar 2))) #(struct:expr-Pi mw #(struct:expr-bvar 2) #(struct:expr-Pi mw #(struct:expr-bvar 4) #(struct:expr-bvar 3))))))) . #(struct:expr-lam m0 #(struct:expr-Type #(struct:lzero)) #(struct:expr-lam m0 #(struct:expr-Type #(struct:lzero)) #(struct:expr-lam m0 #(struct:expr-Type #(struct:lzero)) #(struct:expr-lam mw #(struct:expr-Pi mw #(struct:expr-bvar 2) #(struct:expr-Pi mw #(struct:expr-bvar 2) #(struct:expr-bvar 2))) #(struct:expr-lam mw #(struct:expr-bvar 2) #(struct:expr-lam mw #(struct:expr-bvar 4) #(struct:expr-app #(struct:expr-app #(struct:expr-bvar 2) #(struct:expr-bvar 0)) #(struct:expr-bvar 1)))))))))) (prologos::core::id . (#(struct:expr-Pi m0 #(struct:expr-Type #(struct:lzero)) #(struct:expr-Pi mw #(struct:expr-bvar 0) #(struct:expr-bvar 1))) . #(struct:expr-lam m0 #(struct:expr-Type #(struct:lzero)) #(struct:expr-lam mw #(struct:expr-bvar 0) #(struct:expr-bvar 0))))) (prologos::core::on . (#(struct:expr-Pi m0 #(struct:expr-Type #(struct:lzero)) #(struct:expr-Pi m0 #(struct:expr-Type #(struct:lzero)) #(struct:expr-Pi m0 #(struct:expr-Type #(struct:lzero)) #(struct:expr-Pi mw #(struct:expr-Pi mw #(struct:expr-bvar 2) #(struct:expr-Pi mw #(struct:expr-bvar 3) #(struct:expr-bvar 3))) #(struct:expr-Pi mw #(struct:expr-Pi mw #(struct:expr-bvar 1) #(struct:expr-bvar 4)) #(struct:expr-Pi mw #(struct:expr-bvar 2) #(struct:expr-Pi mw #(struct:expr-bvar 3) #(struct:expr-bvar 5)))))))) . #(struct:expr-lam m0 #(struct:expr-Type #(struct:lzero)) #(struct:expr-lam m0 #(struct:expr-Type #(struct:lzero)) #(struct:expr-lam m0 #(struct:expr-Type #(struct:lzero)) #(struct:expr-lam mw #(struct:expr-Pi mw #(struct:expr-bvar 2) #(struct:expr-Pi mw #(struct:expr-bvar 3) #(struct:expr-bvar 3))) #(struct:expr-lam mw #(struct:expr-Pi mw #(struct:expr-bvar 1) #(struct:expr-bvar 4)) #(struct:expr-lam mw #(struct:expr-bvar 2) #(struct:expr-lam mw #(struct:expr-bvar 3) #(struct:expr-app #(struct:expr-app #(struct:expr-bvar 3) #(struct:expr-app #(struct:expr-bvar 2) #(struct:expr-bvar 1))) #(struct:expr-app #(struct:expr-bvar 2) #(struct:expr-bvar 0)))))))))))) (prologos::data::nat::add . (#(struct:expr-Pi mw #(struct:expr-Nat) #(struct:expr-Pi mw #(struct:expr-Nat) #(struct:expr-Nat))) . #(struct:expr-lam mw #(struct:expr-Nat) #(struct:expr-lam mw #(struct:expr-Nat) #(struct:expr-reduce #(struct:expr-bvar 0) (#(struct:expr-reduce-arm zero 0 #(struct:expr-bvar 1)) #(struct:expr-reduce-arm suc 1 #(struct:expr-suc #(struct:expr-app #(struct:expr-app #(struct:expr-fvar prologos::data::nat::add) #(struct:expr-bvar 2)) #(struct:expr-bvar 0))))) #t))))) (prologos::data::nat::bool-to-nat . (#(struct:expr-Pi mw #(struct:expr-Bool) #(struct:expr-Nat)) . #(struct:expr-lam mw #(struct:expr-Bool) #(struct:expr-reduce #(struct:expr-bvar 0) (#(struct:expr-reduce-arm true 0 #(struct:expr-nat-val 1)) #(struct:expr-reduce-arm false 0 #(struct:expr-nat-val 0))) #t)))) (prologos::data::nat::clamp . (#(struct:expr-Pi mw #(struct:expr-Nat) #(struct:expr-Pi mw #(struct:expr-Nat) #(struct:expr-Pi mw #(struct:expr-Nat) #(struct:expr-Nat)))) . #(struct:expr-lam mw #(struct:expr-Nat) #(struct:expr-lam mw #(struct:expr-Nat) #(struct:expr-lam mw #(struct:expr-hole) #(struct:expr-app #(struct:expr-app #(struct:expr-fvar prologos::data::nat::max) #(struct:expr-bvar 2)) #(struct:expr-app #(struct:expr-app #(struct:expr-fvar prologos::data::nat::min) #(struct:expr-bvar 0)) #(struct:expr-bvar 1)))))))) (prologos::data::nat::double . (#(struct:expr-Pi mw #(struct:expr-Nat) #(struct:expr-Nat)) . #(struct:expr-lam mw #(struct:expr-Nat) #(struct:expr-reduce #(struct:expr-bvar 0) (#(struct:expr-reduce-arm zero 0 #(struct:expr-nat-val 0)) #(struct:expr-reduce-arm suc 1 #(struct:expr-suc #(struct:expr-suc #(struct:expr-app #(struct:expr-fvar prologos::data::nat::double) #(struct:expr-bvar 0)))))) #t)))) (prologos::data::nat::ge? . (#(struct:expr-Pi mw #(struct:expr-Nat) #(struct:expr-Pi mw #(struct:expr-Nat) #(struct:expr-Bool))) . #(struct:expr-lam mw #(struct:expr-Nat) #(struct:expr-lam mw #(struct:expr-Nat) #(struct:expr-app #(struct:expr-app #(struct:expr-fvar prologos::data::nat::le?) #(struct:expr-bvar 0)) #(struct:expr-bvar 1)))))) (prologos::data::nat::gt? . (#(struct:expr-Pi mw #(struct:expr-Nat) #(struct:expr-Pi mw #(struct:expr-Nat) #(struct:expr-Bool))) . #(struct:expr-lam mw #(struct:expr-Nat) #(struct:expr-lam mw #(struct:expr-Nat) #(struct:expr-app #(struct:expr-app #(struct:expr-fvar prologos::data::nat::lt?) #(struct:expr-bvar 0)) #(struct:expr-bvar 1)))))) (prologos::data::nat::le? . (#(struct:expr-Pi mw #(struct:expr-Nat) #(struct:expr-Pi mw #(struct:expr-Nat) #(struct:expr-Bool))) . #(struct:expr-lam mw #(struct:expr-Nat) #(struct:expr-lam mw #(struct:expr-Nat) #(struct:expr-app #(struct:expr-fvar prologos::data::nat::zero?) #(struct:expr-app #(struct:expr-app #(struct:expr-fvar prologos::data::nat::sub) #(struct:expr-bvar 1)) #(struct:expr-bvar 0))))))) (prologos::data::nat::lt? . (#(struct:expr-Pi mw #(struct:expr-Nat) #(struct:expr-Pi mw #(struct:expr-Nat) #(struct:expr-Bool))) . #(struct:expr-lam mw #(struct:expr-Nat) #(struct:expr-lam mw #(struct:expr-Nat) #(struct:expr-reduce #(struct:expr-app #(struct:expr-app #(struct:expr-fvar prologos::data::nat::le?) #(struct:expr-bvar 0)) #(struct:expr-bvar 1)) (#(struct:expr-reduce-arm true 0 #(struct:expr-false)) #(struct:expr-reduce-arm false 0 #(struct:expr-true))) #t))))) (prologos::data::nat::max . (#(struct:expr-Pi mw #(struct:expr-Nat) #(struct:expr-Pi mw #(struct:expr-Nat) #(struct:expr-Nat))) . #(struct:expr-lam mw #(struct:expr-Nat) #(struct:expr-lam mw #(struct:expr-Nat) #(struct:expr-reduce #(struct:expr-app #(struct:expr-app #(struct:expr-fvar prologos::data::nat::le?) #(struct:expr-bvar 1)) #(struct:expr-bvar 0)) (#(struct:expr-reduce-arm true 0 #(struct:expr-bvar 0)) #(struct:expr-reduce-arm false 0 #(struct:expr-bvar 1))) #t))))) (prologos::data::nat::min . (#(struct:expr-Pi mw #(struct:expr-Nat) #(struct:expr-Pi mw #(struct:expr-Nat) #(struct:expr-Nat))) . #(struct:expr-lam mw #(struct:expr-Nat) #(struct:expr-lam mw #(struct:expr-Nat) #(struct:expr-reduce #(struct:expr-app #(struct:expr-app #(struct:expr-fvar prologos::data::nat::le?) #(struct:expr-bvar 1)) #(struct:expr-bvar 0)) (#(struct:expr-reduce-arm true 0 #(struct:expr-bvar 1)) #(struct:expr-reduce-arm false 0 #(struct:expr-bvar 0))) #t))))) (prologos::data::nat::mult . (#(struct:expr-Pi mw #(struct:expr-Nat) #(struct:expr-Pi mw #(struct:expr-Nat) #(struct:expr-Nat))) . #(struct:expr-lam mw #(struct:expr-Nat) #(struct:expr-lam mw #(struct:expr-Nat) #(struct:expr-reduce #(struct:expr-bvar 0) (#(struct:expr-reduce-arm zero 0 #(struct:expr-nat-val 0)) #(struct:expr-reduce-arm suc 1 #(struct:expr-app #(struct:expr-app #(struct:expr-fvar prologos::data::nat::add) #(struct:expr-bvar 2)) #(struct:expr-app #(struct:expr-app #(struct:expr-fvar prologos::data::nat::mult) #(struct:expr-bvar 2)) #(struct:expr-bvar 0))))) #t))))) (prologos::data::nat::nat-eq? . (#(struct:expr-Pi mw #(struct:expr-Nat) #(struct:expr-Pi mw #(struct:expr-Nat) #(struct:expr-Bool))) . #(struct:expr-lam mw #(struct:expr-Nat) #(struct:expr-lam mw #(struct:expr-Nat) #(struct:expr-reduce #(struct:expr-app #(struct:expr-app #(struct:expr-fvar prologos::data::nat::le?) #(struct:expr-bvar 1)) #(struct:expr-bvar 0)) (#(struct:expr-reduce-arm true 0 #(struct:expr-app #(struct:expr-app #(struct:expr-fvar prologos::data::nat::le?) #(struct:expr-bvar 0)) #(struct:expr-bvar 1))) #(struct:expr-reduce-arm false 0 #(struct:expr-false))) #t))))) (prologos::data::nat::pow . (#(struct:expr-Pi mw #(struct:expr-Nat) #(struct:expr-Pi mw #(struct:expr-Nat) #(struct:expr-Nat))) . #(struct:expr-lam mw #(struct:expr-Nat) #(struct:expr-lam mw #(struct:expr-Nat) #(struct:expr-reduce #(struct:expr-bvar 0) (#(struct:expr-reduce-arm zero 0 #(struct:expr-nat-val 1)) #(struct:expr-reduce-arm suc 1 #(struct:expr-app #(struct:expr-app #(struct:expr-fvar prologos::data::nat::mult) #(struct:expr-bvar 2)) #(struct:expr-app #(struct:expr-app #(struct:expr-fvar prologos::data::nat::pow) #(struct:expr-bvar 2)) #(struct:expr-bvar 0))))) #t))))) (prologos::data::nat::pred . (#(struct:expr-Pi mw #(struct:expr-Nat) #(struct:expr-Nat)) . #(struct:expr-lam mw #(struct:expr-Nat) #(struct:expr-reduce #(struct:expr-bvar 0) (#(struct:expr-reduce-arm zero 0 #(struct:expr-nat-val 0)) #(struct:expr-reduce-arm suc 1 #(struct:expr-bvar 0))) #t)))) (prologos::data::nat::sub . (#(struct:expr-Pi mw #(struct:expr-Nat) #(struct:expr-Pi mw #(struct:expr-Nat) #(struct:expr-Nat))) . #(struct:expr-lam mw #(struct:expr-Nat) #(struct:expr-lam mw #(struct:expr-Nat) #(struct:expr-reduce #(struct:expr-bvar 0) (#(struct:expr-reduce-arm zero 0 #(struct:expr-bvar 1)) #(struct:expr-reduce-arm suc 1 #(struct:expr-app #(struct:expr-fvar prologos::data::nat::pred) #(struct:expr-app #(struct:expr-app #(struct:expr-fvar prologos::data::nat::sub) #(struct:expr-bvar 2)) #(struct:expr-bvar 0))))) #t))))) (prologos::data::nat::zero? . (#(struct:expr-Pi mw #(struct:expr-Nat) #(struct:expr-Bool)) . #(struct:expr-lam mw #(struct:expr-Nat) #(struct:expr-reduce #(struct:expr-bvar 0) (#(struct:expr-reduce-arm zero 0 #(struct:expr-true)) #(struct:expr-reduce-arm suc 1 #(struct:expr-false))) #t)))) (sub . (#(struct:expr-Pi mw #(struct:expr-Nat) #(struct:expr-Pi mw #(struct:expr-Nat) #(struct:expr-Nat))) . #(struct:expr-lam mw #(struct:expr-Nat) #(struct:expr-lam mw #(struct:expr-Nat) #(struct:expr-reduce #(struct:expr-bvar 0) (#(struct:expr-reduce-arm zero 0 #(struct:expr-bvar 1)) #(struct:expr-reduce-arm suc 1 #(struct:expr-app #(struct:expr-fvar prologos::data::nat::pred) #(struct:expr-app #(struct:expr-app #(struct:expr-fvar prologos::data::nat::sub) #(struct:expr-bvar 2)) #(struct:expr-bvar 0))))) #t))))) (zero? . (#(struct:expr-Pi mw #(struct:expr-Nat) #(struct:expr-Bool)) . #(struct:expr-lam mw #(struct:expr-Nat) #(struct:expr-reduce #(struct:expr-bvar 0) (#(struct:expr-reduce-arm zero 0 #(struct:expr-true)) #(struct:expr-reduce-arm suc 1 #(struct:expr-false))) #t))))) #hasheq((add . #(struct:spec-entry ((Nat Nat -> Nat)) #f #f #(struct:srcloc "" 0 0 0) () () #f #f)) (apply . #(struct:spec-entry (((A -> B) A -> B)) #f #f #(struct:srcloc "" 0 0 0) () ((A Type 0) (B Type 0)) #f #f)) (bool-to-nat . #(struct:spec-entry ((Bool -> Nat)) #f #f #(struct:srcloc "" 0 0 0) () () #f #f)) (clamp . #(struct:spec-entry ((Nat Nat -> Nat -> Nat)) #f #f #(struct:srcloc "" 0 0 0) () () #f #f)) (compose . #(struct:spec-entry (((B -> C) (A -> B) A -> C)) #f #f #(struct:srcloc "" 0 0 0) () ((B Type 0) (C Type 0) (A Type 0)) #f #f)) (const . #(struct:spec-entry ((A B -> A)) #f #f #(struct:srcloc "" 0 0 0) () ((A Type 0) (B Type 0)) #f #f)) (double . #(struct:spec-entry ((Nat -> Nat)) #f #f #(struct:srcloc "" 0 0 0) () () #f #f)) (flip . #(struct:spec-entry (((A -> B -> C) B A -> C)) #f #f #(struct:srcloc "" 0 0 0) () ((A Type 0) (B Type 0) (C Type 0)) #f #f)) (ge? . #(struct:spec-entry ((Nat Nat -> Bool)) #f #f #(struct:srcloc "" 0 0 0) () () #f #f)) (gt? . #(struct:spec-entry ((Nat Nat -> Bool)) #f #f #(struct:srcloc "" 0 0 0) () () #f #f)) (id . #(struct:spec-entry ((A -> A)) #f #f #(struct:srcloc "" 0 0 0) () ((A Type 0)) #f #f)) (le? . #(struct:spec-entry ((Nat Nat -> Bool)) #f #f #(struct:srcloc "" 0 0 0) () () #f #f)) (lt? . #(struct:spec-entry ((Nat Nat -> Bool)) #f #f #(struct:srcloc "" 0 0 0) () () #f #f)) (max . #(struct:spec-entry ((Nat Nat -> Nat)) #f #f #(struct:srcloc "" 0 0 0) () () #f #f)) (min . #(struct:spec-entry ((Nat Nat -> Nat)) #f #f #(struct:srcloc "" 0 0 0) () () #f #f)) (mult . #(struct:spec-entry ((Nat Nat -> Nat)) #f #f #(struct:srcloc "" 0 0 0) () () #f #f)) (nat-eq? . #(struct:spec-entry ((Nat Nat -> Bool)) #f #f #(struct:srcloc "" 0 0 0) () () #f #f)) (on . #(struct:spec-entry (((B -> B -> C) (A -> B) A A -> C)) #f #f #(struct:srcloc "" 0 0 0) () ((B Type 0) (C Type 0) (A Type 0)) #f #f)) (pow . #(struct:spec-entry ((Nat Nat -> Nat)) #f #f #(struct:srcloc "" 0 0 0) () () #f #f)) (pred . #(struct:spec-entry ((Nat -> Nat)) #f #f #(struct:srcloc "" 0 0 0) () () #f #f)) (sub . #(struct:spec-entry ((Nat Nat -> Nat)) #f #f #(struct:srcloc "" 0 0 0) () () #f #f)) (zero? . #(struct:spec-entry ((Nat -> Bool)) #f #f #(struct:srcloc "" 0 0 0) () () #f #f))) #hasheq((Ordering . #(struct:srcloc "/home/user/prologos/racket/prologos/lib/prologos/data/ordering.prologos" 8 0 40)) (add . #(struct:srcloc "/home/user/prologos/racket/prologos/lib/prologos/data/nat.prologos" 10 0 69)) (and . #(struct:srcloc "/home/user/prologos/racket/prologos/lib/prologos/data/bool.prologos" 17 0 62)) (apply . #(struct:srcloc "/home/user/prologos/racket/prologos/lib/prologos/core.prologos" 25 0 23)) (bool-eq . #(struct:srcloc "/home/user/prologos/racket/prologos/lib/prologos/data/bool.prologos" 38 0 66)) (bool-to-nat . #(struct:srcloc "/home/user/prologos/racket/prologos/lib/prologos/data/nat.prologos" 119 0 74)) (clamp . #(struct:srcloc "/home/user/prologos/racket/prologos/lib/prologos/data/nat.prologos" 126 0 54)) (compose . #(struct:srcloc "/home/user/prologos/racket/prologos/lib/prologos/core.prologos" 20 0 29)) (const . #(struct:srcloc "/home/user/prologos/racket/prologos/lib/prologos/core.prologos" 15 0 20)) (double . #(struct:srcloc "/home/user/prologos/racket/prologos/lib/prologos/data/nat.prologos" 24 0 79)) (eq-ord . #(struct:srcloc "/home/user/prologos/racket/prologos/lib/prologos/data/ordering.prologos" 8 0 40)) (flip . #(struct:srcloc "/home/user/prologos/racket/prologos/lib/prologos/core.prologos" 30 0 26)) (ge? . #(struct:srcloc "/home/user/prologos/racket/prologos/lib/prologos/data/nat.prologos" 85 0 24)) (gt-ord . #(struct:srcloc "/home/user/prologos/racket/prologos/lib/prologos/data/ordering.prologos" 8 0 40)) (gt? . #(struct:srcloc "/home/user/prologos/racket/prologos/lib/prologos/data/nat.prologos" 80 0 24)) (id . #(struct:srcloc "/home/user/prologos/racket/prologos/lib/prologos/core.prologos" 10 0 15)) (implies . #(struct:srcloc "/home/user/prologos/racket/prologos/lib/prologos/data/bool.prologos" 59 0 33)) (le? . #(struct:srcloc "/home/user/prologos/racket/prologos/lib/prologos/data/nat.prologos" 68 0 31)) (lt-ord . #(struct:srcloc "/home/user/prologos/racket/prologos/lib/prologos/data/ordering.prologos" 8 0 40)) (lt? . #(struct:srcloc "/home/user/prologos/racket/prologos/lib/prologos/data/nat.prologos" 73 0 73)) (max . #(struct:srcloc "/home/user/prologos/racket/prologos/lib/prologos/data/nat.prologos" 108 0 66)) (min . #(struct:srcloc "/home/user/prologos/racket/prologos/lib/prologos/data/nat.prologos" 101 0 66)) (mult . #(struct:srcloc "/home/user/prologos/racket/prologos/lib/prologos/data/nat.prologos" 17 0 76)) (nand . #(struct:srcloc "/home/user/prologos/racket/prologos/lib/prologos/data/bool.prologos" 49 0 30)) (nat-eq? . #(struct:srcloc "/home/user/prologos/racket/prologos/lib/prologos/data/nat.prologos" 90 0 80)) (nor . #(struct:srcloc "/home/user/prologos/racket/prologos/lib/prologos/data/bool.prologos" 54 0 28)) (not . #(struct:srcloc "/home/user/prologos/racket/prologos/lib/prologos/data/bool.prologos" 10 0 63)) (on . #(struct:srcloc "/home/user/prologos/racket/prologos/lib/prologos/core.prologos" 36 0 32)) (or . #(struct:srcloc "/home/user/prologos/racket/prologos/lib/prologos/data/bool.prologos" 24 0 60)) (pow . #(struct:srcloc "/home/user/prologos/racket/prologos/lib/prologos/data/nat.prologos" 57 0 92)) (pred . #(struct:srcloc "/home/user/prologos/racket/prologos/lib/prologos/data/nat.prologos" 31 0 60)) (prologos::core::apply . #(struct:srcloc "/home/user/prologos/racket/prologos/lib/prologos/core.prologos" 25 0 23)) (prologos::core::compose . #(struct:srcloc "/home/user/prologos/racket/prologos/lib/prologos/core.prologos" 20 0 29)) (prologos::core::const . #(struct:srcloc "/home/user/prologos/racket/prologos/lib/prologos/core.prologos" 15 0 20)) (prologos::core::flip . #(struct:srcloc "/home/user/prologos/racket/prologos/lib/prologos/core.prologos" 30 0 26)) (prologos::core::id . #(struct:srcloc "/home/user/prologos/racket/prologos/lib/prologos/core.prologos" 10 0 15)) (prologos::core::on . #(struct:srcloc "/home/user/prologos/racket/prologos/lib/prologos/core.prologos" 36 0 32)) (prologos::data::bool::and . #(struct:srcloc "/home/user/prologos/racket/prologos/lib/prologos/data/bool.prologos" 17 0 62)) (prologos::data::bool::bool-eq . #(struct:srcloc "/home/user/prologos/racket/prologos/lib/prologos/data/bool.prologos" 38 0 66)) (prologos::data::bool::implies . #(struct:srcloc "/home/user/prologos/racket/prologos/lib/prologos/data/bool.prologos" 59 0 33)) (prologos::data::bool::nand . #(struct:srcloc "/home/user/prologos/racket/prologos/lib/prologos/data/bool.prologos" 49 0 30)) (prologos::data::bool::nor . #(struct:srcloc "/home/user/prologos/racket/prologos/lib/prologos/data/bool.prologos" 54 0 28)) (prologos::data::bool::not . #(struct:srcloc "/home/user/prologos/racket/prologos/lib/prologos/data/bool.prologos" 10 0 63)) (prologos::data::bool::or . #(struct:srcloc "/home/user/prologos/racket/prologos/lib/prologos/data/bool.prologos" 24 0 60)) (prologos::data::bool::xor . #(struct:srcloc "/home/user/prologos/racket/prologos/lib/prologos/data/bool.prologos" 31 0 62)) (prologos::data::nat::add . #(struct:srcloc "/home/user/prologos/racket/prologos/lib/prologos/data/nat.prologos" 10 0 69)) (prologos::data::nat::bool-to-nat . #(struct:srcloc "/home/user/prologos/racket/prologos/lib/prologos/data/nat.prologos" 119 0 74)) (prologos::data::nat::clamp . #(struct:srcloc "/home/user/prologos/racket/prologos/lib/prologos/data/nat.prologos" 126 0 54)) (prologos::data::nat::double . #(struct:srcloc "/home/user/prologos/racket/prologos/lib/prologos/data/nat.prologos" 24 0 79)) (prologos::data::nat::ge? . #(struct:srcloc "/home/user/prologos/racket/prologos/lib/prologos/data/nat.prologos" 85 0 24)) (prologos::data::nat::gt? . #(struct:srcloc "/home/user/prologos/racket/prologos/lib/prologos/data/nat.prologos" 80 0 24)) (prologos::data::nat::le? . #(struct:srcloc "/home/user/prologos/racket/prologos/lib/prologos/data/nat.prologos" 68 0 31)) (prologos::data::nat::lt? . #(struct:srcloc "/home/user/prologos/racket/prologos/lib/prologos/data/nat.prologos" 73 0 73)) (prologos::data::nat::max . #(struct:srcloc "/home/user/prologos/racket/prologos/lib/prologos/data/nat.prologos" 108 0 66)) (prologos::data::nat::min . #(struct:srcloc "/home/user/prologos/racket/prologos/lib/prologos/data/nat.prologos" 101 0 66)) (prologos::data::nat::mult . #(struct:srcloc "/home/user/prologos/racket/prologos/lib/prologos/data/nat.prologos" 17 0 76)) (prologos::data::nat::nat-eq? . #(struct:srcloc "/home/user/prologos/racket/prologos/lib/prologos/data/nat.prologos" 90 0 80)) (prologos::data::nat::pow . #(struct:srcloc "/home/user/prologos/racket/prologos/lib/prologos/data/nat.prologos" 57 0 92)) (prologos::data::nat::pred . #(struct:srcloc "/home/user/prologos/racket/prologos/lib/prologos/data/nat.prologos" 31 0 60)) (prologos::data::nat::sub . #(struct:srcloc "/home/user/prologos/racket/prologos/lib/prologos/data/nat.prologos" 50 0 70)) (prologos::data::nat::zero? . #(struct:srcloc "/home/user/prologos/racket/prologos/lib/prologos/data/nat.prologos" 38 0 65)) (prologos::data::ordering::Ordering . #(struct:srcloc "/home/user/prologos/racket/prologos/lib/prologos/data/ordering.prologos" 8 0 40)) (prologos::data::ordering::eq-ord . #(struct:srcloc "/home/user/prologos/racket/prologos/lib/prologos/data/ordering.prologos" 8 0 40)) (prologos::data::ordering::gt-ord . #(struct:srcloc "/home/user/prologos/racket/prologos/lib/prologos/data/ordering.prologos" 8 0 40)) (prologos::data::ordering::lt-ord . #(struct:srcloc "/home/user/prologos/racket/prologos/lib/prologos/data/ordering.prologos" 8 0 40)) (sub . #(struct:srcloc "/home/user/prologos/racket/prologos/lib/prologos/data/nat.prologos" 50 0 70)) (xor . #(struct:srcloc "/home/user/prologos/racket/prologos/lib/prologos/data/bool.prologos" 31 0 62)) (zero? . #(struct:srcloc "/home/user/prologos/racket/prologos/lib/prologos/data/nat.prologos" 38 0 65))) (add mult double pred zero? sub pow le? lt? gt? ge? nat-eq? min max bool-to-nat clamp) "prologos::data::nat" #hasheq(($compose . expand-compose-sexp) ($list-literal . expand-list-literal) ($lseq-literal . expand-lseq-literal) ($mixfix . expand-mixfix-form) ($pipe-gt . expand-pipe-block) ($quasiquote . expand-quasiquote) ($quote . expand-quote) (cond . expand-cond) (do . expand-do) (if . expand-if) (let . expand-let) (pipe2 . #(struct:preparse-macro pipe2 (pipe2 $x $f $g) ($g ($f $x)))) (pipe3 . #(struct:preparse-macro pipe3 (pipe3 $x $f $g $h) ($h ($g ($f $x))))) (twice . #(struct:preparse-macro twice (twice $f $x) ($f ($f $x)))) (unless . #(struct:preparse-macro unless (unless $cond $body) (if $cond unit $body))) (when . #(struct:preparse-macro when (when $cond $body) (if $cond $body unit))) (with-transient . expand-with-transient)) #hasheq((eq-ord . #(struct:ctor-meta Ordering () () () 1)) (false . #(struct:ctor-meta Bool () () () 1)) (gt-ord . #(struct:ctor-meta Ordering () () () 2)) (lt-ord . #(struct:ctor-meta Ordering () () () 0)) (suc . #(struct:ctor-meta Nat () (Nat) (#t) 1)) (true . #(struct:ctor-meta Bool () () () 0)) (unit . #(struct:ctor-meta Unit () () () 0)) (zero . #(struct:ctor-meta Nat () () () 0))) #hasheq((Bool . (true false)) (Nat . (zero suc)) (Ordering . (lt-ord eq-ord gt-ord)) (Unit . (unit))) #hasheq() #hasheq(((Nat . Int) . #t) ((Posit8 . Posit64) . #t) ((Posit8 . Posit32) . #t) ((Posit32 . Posit64) . #t) ((Nat . Rat) . #t) ((Posit8 . Posit16) . #t) ((Posit16 . Posit64) . #t) ((Int . Rat) . #t) ((Posit16 . Posit32) . #t)) #hasheq() #hasheq() #hasheq() #hasheq() #hasheq() #hasheq() #hasheq() #hasheq() #hasheq((add . (x y)) (and . (a b)) (apply . (A B f x)) (bool-eq . (a b)) (bool-to-nat . (b)) (clamp . (low high)) (compose . (B C A g f x)) (const . (A B x _)) (double . (n)) (flip . (A B C f b a)) (ge? . (x y)) (gt? . (x y)) (id . (A x)) (implies . (a b)) (le? . (x y)) (lt? . (x y)) (max . (x y)) (min . (x y)) (mult . (x y)) (nand . (a b)) (nat-eq? . (x y)) (nor . (a b)) (not . (b)) (on . (B C A f g x y)) (or . (a b)) (pow . (base exp)) (pred . (n)) (sub . (x y)) (xor . (a b)) (zero? . (n))) #hasheq() #hasheq() #hasheq()) \ No newline at end of file +(1 "/home/user/prologos/racket/prologos/lib/prologos/data/nat.prologos:1776910266" #hasheq((add . (#(struct:expr-Pi mw #(struct:expr-Nat) #(struct:expr-Pi mw #(struct:expr-Nat) #(struct:expr-Nat))) . #(struct:expr-lam mw #(struct:expr-Nat) #(struct:expr-lam mw #(struct:expr-Nat) #(struct:expr-reduce #(struct:expr-bvar 0) (#(struct:expr-reduce-arm zero 0 #(struct:expr-bvar 1)) #(struct:expr-reduce-arm suc 1 #(struct:expr-suc #(struct:expr-app #(struct:expr-app #(struct:expr-fvar prologos::data::nat::add) #(struct:expr-bvar 2)) #(struct:expr-bvar 0))))) #t))))) (apply . (#(struct:expr-Pi m0 #(struct:expr-Type #(struct:lzero)) #(struct:expr-Pi m0 #(struct:expr-Type #(struct:lzero)) #(struct:expr-Pi mw #(struct:expr-Pi mw #(struct:expr-bvar 1) #(struct:expr-bvar 1)) #(struct:expr-Pi mw #(struct:expr-bvar 2) #(struct:expr-bvar 2))))) . #(struct:expr-lam m0 #(struct:expr-Type #(struct:lzero)) #(struct:expr-lam m0 #(struct:expr-Type #(struct:lzero)) #(struct:expr-lam mw #(struct:expr-Pi mw #(struct:expr-bvar 1) #(struct:expr-bvar 1)) #(struct:expr-lam mw #(struct:expr-bvar 2) #(struct:expr-app #(struct:expr-bvar 1) #(struct:expr-bvar 0)))))))) (bool-to-nat . (#(struct:expr-Pi mw #(struct:expr-Bool) #(struct:expr-Nat)) . #(struct:expr-lam mw #(struct:expr-Bool) #(struct:expr-reduce #(struct:expr-bvar 0) (#(struct:expr-reduce-arm true 0 #(struct:expr-nat-val 1)) #(struct:expr-reduce-arm false 0 #(struct:expr-nat-val 0))) #t)))) (clamp . (#(struct:expr-Pi mw #(struct:expr-Nat) #(struct:expr-Pi mw #(struct:expr-Nat) #(struct:expr-Pi mw #(struct:expr-Nat) #(struct:expr-Nat)))) . #(struct:expr-lam mw #(struct:expr-Nat) #(struct:expr-lam mw #(struct:expr-Nat) #(struct:expr-lam mw #(struct:expr-hole) #(struct:expr-app #(struct:expr-app #(struct:expr-fvar prologos::data::nat::max) #(struct:expr-bvar 2)) #(struct:expr-app #(struct:expr-app #(struct:expr-fvar prologos::data::nat::min) #(struct:expr-bvar 0)) #(struct:expr-bvar 1)))))))) (compose . (#(struct:expr-Pi m0 #(struct:expr-Type #(struct:lzero)) #(struct:expr-Pi m0 #(struct:expr-Type #(struct:lzero)) #(struct:expr-Pi m0 #(struct:expr-Type #(struct:lzero)) #(struct:expr-Pi mw #(struct:expr-Pi mw #(struct:expr-bvar 2) #(struct:expr-bvar 2)) #(struct:expr-Pi mw #(struct:expr-Pi mw #(struct:expr-bvar 1) #(struct:expr-bvar 4)) #(struct:expr-Pi mw #(struct:expr-bvar 2) #(struct:expr-bvar 4))))))) . #(struct:expr-lam m0 #(struct:expr-Type #(struct:lzero)) #(struct:expr-lam m0 #(struct:expr-Type #(struct:lzero)) #(struct:expr-lam m0 #(struct:expr-Type #(struct:lzero)) #(struct:expr-lam mw #(struct:expr-Pi mw #(struct:expr-bvar 2) #(struct:expr-bvar 2)) #(struct:expr-lam mw #(struct:expr-Pi mw #(struct:expr-bvar 1) #(struct:expr-bvar 4)) #(struct:expr-lam mw #(struct:expr-bvar 2) #(struct:expr-app #(struct:expr-bvar 2) #(struct:expr-app #(struct:expr-bvar 1) #(struct:expr-bvar 0))))))))))) (const . (#(struct:expr-Pi m0 #(struct:expr-Type #(struct:lzero)) #(struct:expr-Pi m0 #(struct:expr-Type #(struct:lzero)) #(struct:expr-Pi mw #(struct:expr-bvar 1) #(struct:expr-Pi mw #(struct:expr-bvar 1) #(struct:expr-bvar 3))))) . #(struct:expr-lam m0 #(struct:expr-Type #(struct:lzero)) #(struct:expr-lam m0 #(struct:expr-Type #(struct:lzero)) #(struct:expr-lam mw #(struct:expr-bvar 1) #(struct:expr-lam mw #(struct:expr-bvar 1) #(struct:expr-bvar 1))))))) (double . (#(struct:expr-Pi mw #(struct:expr-Nat) #(struct:expr-Nat)) . #(struct:expr-lam mw #(struct:expr-Nat) #(struct:expr-reduce #(struct:expr-bvar 0) (#(struct:expr-reduce-arm zero 0 #(struct:expr-nat-val 0)) #(struct:expr-reduce-arm suc 1 #(struct:expr-suc #(struct:expr-suc #(struct:expr-app #(struct:expr-fvar prologos::data::nat::double) #(struct:expr-bvar 0)))))) #t)))) (flip . (#(struct:expr-Pi m0 #(struct:expr-Type #(struct:lzero)) #(struct:expr-Pi m0 #(struct:expr-Type #(struct:lzero)) #(struct:expr-Pi m0 #(struct:expr-Type #(struct:lzero)) #(struct:expr-Pi mw #(struct:expr-Pi mw #(struct:expr-bvar 2) #(struct:expr-Pi mw #(struct:expr-bvar 2) #(struct:expr-bvar 2))) #(struct:expr-Pi mw #(struct:expr-bvar 2) #(struct:expr-Pi mw #(struct:expr-bvar 4) #(struct:expr-bvar 3))))))) . #(struct:expr-lam m0 #(struct:expr-Type #(struct:lzero)) #(struct:expr-lam m0 #(struct:expr-Type #(struct:lzero)) #(struct:expr-lam m0 #(struct:expr-Type #(struct:lzero)) #(struct:expr-lam mw #(struct:expr-Pi mw #(struct:expr-bvar 2) #(struct:expr-Pi mw #(struct:expr-bvar 2) #(struct:expr-bvar 2))) #(struct:expr-lam mw #(struct:expr-bvar 2) #(struct:expr-lam mw #(struct:expr-bvar 4) #(struct:expr-app #(struct:expr-app #(struct:expr-bvar 2) #(struct:expr-bvar 0)) #(struct:expr-bvar 1)))))))))) (ge? . (#(struct:expr-Pi mw #(struct:expr-Nat) #(struct:expr-Pi mw #(struct:expr-Nat) #(struct:expr-Bool))) . #(struct:expr-lam mw #(struct:expr-Nat) #(struct:expr-lam mw #(struct:expr-Nat) #(struct:expr-app #(struct:expr-app #(struct:expr-fvar prologos::data::nat::le?) #(struct:expr-bvar 0)) #(struct:expr-bvar 1)))))) (gt? . (#(struct:expr-Pi mw #(struct:expr-Nat) #(struct:expr-Pi mw #(struct:expr-Nat) #(struct:expr-Bool))) . #(struct:expr-lam mw #(struct:expr-Nat) #(struct:expr-lam mw #(struct:expr-Nat) #(struct:expr-app #(struct:expr-app #(struct:expr-fvar prologos::data::nat::lt?) #(struct:expr-bvar 0)) #(struct:expr-bvar 1)))))) (id . (#(struct:expr-Pi m0 #(struct:expr-Type #(struct:lzero)) #(struct:expr-Pi mw #(struct:expr-bvar 0) #(struct:expr-bvar 1))) . #(struct:expr-lam m0 #(struct:expr-Type #(struct:lzero)) #(struct:expr-lam mw #(struct:expr-bvar 0) #(struct:expr-bvar 0))))) (le? . (#(struct:expr-Pi mw #(struct:expr-Nat) #(struct:expr-Pi mw #(struct:expr-Nat) #(struct:expr-Bool))) . #(struct:expr-lam mw #(struct:expr-Nat) #(struct:expr-lam mw #(struct:expr-Nat) #(struct:expr-app #(struct:expr-fvar prologos::data::nat::zero?) #(struct:expr-app #(struct:expr-app #(struct:expr-fvar prologos::data::nat::sub) #(struct:expr-bvar 1)) #(struct:expr-bvar 0))))))) (lt? . (#(struct:expr-Pi mw #(struct:expr-Nat) #(struct:expr-Pi mw #(struct:expr-Nat) #(struct:expr-Bool))) . #(struct:expr-lam mw #(struct:expr-Nat) #(struct:expr-lam mw #(struct:expr-Nat) #(struct:expr-reduce #(struct:expr-app #(struct:expr-app #(struct:expr-fvar prologos::data::nat::le?) #(struct:expr-bvar 0)) #(struct:expr-bvar 1)) (#(struct:expr-reduce-arm true 0 #(struct:expr-false)) #(struct:expr-reduce-arm false 0 #(struct:expr-true))) #t))))) (max . (#(struct:expr-Pi mw #(struct:expr-Nat) #(struct:expr-Pi mw #(struct:expr-Nat) #(struct:expr-Nat))) . #(struct:expr-lam mw #(struct:expr-Nat) #(struct:expr-lam mw #(struct:expr-Nat) #(struct:expr-reduce #(struct:expr-app #(struct:expr-app #(struct:expr-fvar prologos::data::nat::le?) #(struct:expr-bvar 1)) #(struct:expr-bvar 0)) (#(struct:expr-reduce-arm true 0 #(struct:expr-bvar 0)) #(struct:expr-reduce-arm false 0 #(struct:expr-bvar 1))) #t))))) (min . (#(struct:expr-Pi mw #(struct:expr-Nat) #(struct:expr-Pi mw #(struct:expr-Nat) #(struct:expr-Nat))) . #(struct:expr-lam mw #(struct:expr-Nat) #(struct:expr-lam mw #(struct:expr-Nat) #(struct:expr-reduce #(struct:expr-app #(struct:expr-app #(struct:expr-fvar prologos::data::nat::le?) #(struct:expr-bvar 1)) #(struct:expr-bvar 0)) (#(struct:expr-reduce-arm true 0 #(struct:expr-bvar 1)) #(struct:expr-reduce-arm false 0 #(struct:expr-bvar 0))) #t))))) (mult . (#(struct:expr-Pi mw #(struct:expr-Nat) #(struct:expr-Pi mw #(struct:expr-Nat) #(struct:expr-Nat))) . #(struct:expr-lam mw #(struct:expr-Nat) #(struct:expr-lam mw #(struct:expr-Nat) #(struct:expr-reduce #(struct:expr-bvar 0) (#(struct:expr-reduce-arm zero 0 #(struct:expr-nat-val 0)) #(struct:expr-reduce-arm suc 1 #(struct:expr-app #(struct:expr-app #(struct:expr-fvar prologos::data::nat::add) #(struct:expr-bvar 2)) #(struct:expr-app #(struct:expr-app #(struct:expr-fvar prologos::data::nat::mult) #(struct:expr-bvar 2)) #(struct:expr-bvar 0))))) #t))))) (nat-eq? . (#(struct:expr-Pi mw #(struct:expr-Nat) #(struct:expr-Pi mw #(struct:expr-Nat) #(struct:expr-Bool))) . #(struct:expr-lam mw #(struct:expr-Nat) #(struct:expr-lam mw #(struct:expr-Nat) #(struct:expr-reduce #(struct:expr-app #(struct:expr-app #(struct:expr-fvar prologos::data::nat::le?) #(struct:expr-bvar 1)) #(struct:expr-bvar 0)) (#(struct:expr-reduce-arm true 0 #(struct:expr-app #(struct:expr-app #(struct:expr-fvar prologos::data::nat::le?) #(struct:expr-bvar 0)) #(struct:expr-bvar 1))) #(struct:expr-reduce-arm false 0 #(struct:expr-false))) #t))))) (on . (#(struct:expr-Pi m0 #(struct:expr-Type #(struct:lzero)) #(struct:expr-Pi m0 #(struct:expr-Type #(struct:lzero)) #(struct:expr-Pi m0 #(struct:expr-Type #(struct:lzero)) #(struct:expr-Pi mw #(struct:expr-Pi mw #(struct:expr-bvar 2) #(struct:expr-Pi mw #(struct:expr-bvar 3) #(struct:expr-bvar 3))) #(struct:expr-Pi mw #(struct:expr-Pi mw #(struct:expr-bvar 1) #(struct:expr-bvar 4)) #(struct:expr-Pi mw #(struct:expr-bvar 2) #(struct:expr-Pi mw #(struct:expr-bvar 3) #(struct:expr-bvar 5)))))))) . #(struct:expr-lam m0 #(struct:expr-Type #(struct:lzero)) #(struct:expr-lam m0 #(struct:expr-Type #(struct:lzero)) #(struct:expr-lam m0 #(struct:expr-Type #(struct:lzero)) #(struct:expr-lam mw #(struct:expr-Pi mw #(struct:expr-bvar 2) #(struct:expr-Pi mw #(struct:expr-bvar 3) #(struct:expr-bvar 3))) #(struct:expr-lam mw #(struct:expr-Pi mw #(struct:expr-bvar 1) #(struct:expr-bvar 4)) #(struct:expr-lam mw #(struct:expr-bvar 2) #(struct:expr-lam mw #(struct:expr-bvar 3) #(struct:expr-app #(struct:expr-app #(struct:expr-bvar 3) #(struct:expr-app #(struct:expr-bvar 2) #(struct:expr-bvar 1))) #(struct:expr-app #(struct:expr-bvar 2) #(struct:expr-bvar 0)))))))))))) (pow . (#(struct:expr-Pi mw #(struct:expr-Nat) #(struct:expr-Pi mw #(struct:expr-Nat) #(struct:expr-Nat))) . #(struct:expr-lam mw #(struct:expr-Nat) #(struct:expr-lam mw #(struct:expr-Nat) #(struct:expr-reduce #(struct:expr-bvar 0) (#(struct:expr-reduce-arm zero 0 #(struct:expr-nat-val 1)) #(struct:expr-reduce-arm suc 1 #(struct:expr-app #(struct:expr-app #(struct:expr-fvar prologos::data::nat::mult) #(struct:expr-bvar 2)) #(struct:expr-app #(struct:expr-app #(struct:expr-fvar prologos::data::nat::pow) #(struct:expr-bvar 2)) #(struct:expr-bvar 0))))) #t))))) (pred . (#(struct:expr-Pi mw #(struct:expr-Nat) #(struct:expr-Nat)) . #(struct:expr-lam mw #(struct:expr-Nat) #(struct:expr-reduce #(struct:expr-bvar 0) (#(struct:expr-reduce-arm zero 0 #(struct:expr-nat-val 0)) #(struct:expr-reduce-arm suc 1 #(struct:expr-bvar 0))) #t)))) (prologos::core::apply . (#(struct:expr-Pi m0 #(struct:expr-Type #(struct:lzero)) #(struct:expr-Pi m0 #(struct:expr-Type #(struct:lzero)) #(struct:expr-Pi mw #(struct:expr-Pi mw #(struct:expr-bvar 1) #(struct:expr-bvar 1)) #(struct:expr-Pi mw #(struct:expr-bvar 2) #(struct:expr-bvar 2))))) . #(struct:expr-lam m0 #(struct:expr-Type #(struct:lzero)) #(struct:expr-lam m0 #(struct:expr-Type #(struct:lzero)) #(struct:expr-lam mw #(struct:expr-Pi mw #(struct:expr-bvar 1) #(struct:expr-bvar 1)) #(struct:expr-lam mw #(struct:expr-bvar 2) #(struct:expr-app #(struct:expr-bvar 1) #(struct:expr-bvar 0)))))))) (prologos::core::compose . (#(struct:expr-Pi m0 #(struct:expr-Type #(struct:lzero)) #(struct:expr-Pi m0 #(struct:expr-Type #(struct:lzero)) #(struct:expr-Pi m0 #(struct:expr-Type #(struct:lzero)) #(struct:expr-Pi mw #(struct:expr-Pi mw #(struct:expr-bvar 2) #(struct:expr-bvar 2)) #(struct:expr-Pi mw #(struct:expr-Pi mw #(struct:expr-bvar 1) #(struct:expr-bvar 4)) #(struct:expr-Pi mw #(struct:expr-bvar 2) #(struct:expr-bvar 4))))))) . #(struct:expr-lam m0 #(struct:expr-Type #(struct:lzero)) #(struct:expr-lam m0 #(struct:expr-Type #(struct:lzero)) #(struct:expr-lam m0 #(struct:expr-Type #(struct:lzero)) #(struct:expr-lam mw #(struct:expr-Pi mw #(struct:expr-bvar 2) #(struct:expr-bvar 2)) #(struct:expr-lam mw #(struct:expr-Pi mw #(struct:expr-bvar 1) #(struct:expr-bvar 4)) #(struct:expr-lam mw #(struct:expr-bvar 2) #(struct:expr-app #(struct:expr-bvar 2) #(struct:expr-app #(struct:expr-bvar 1) #(struct:expr-bvar 0))))))))))) (prologos::core::const . (#(struct:expr-Pi m0 #(struct:expr-Type #(struct:lzero)) #(struct:expr-Pi m0 #(struct:expr-Type #(struct:lzero)) #(struct:expr-Pi mw #(struct:expr-bvar 1) #(struct:expr-Pi mw #(struct:expr-bvar 1) #(struct:expr-bvar 3))))) . #(struct:expr-lam m0 #(struct:expr-Type #(struct:lzero)) #(struct:expr-lam m0 #(struct:expr-Type #(struct:lzero)) #(struct:expr-lam mw #(struct:expr-bvar 1) #(struct:expr-lam mw #(struct:expr-bvar 1) #(struct:expr-bvar 1))))))) (prologos::core::flip . (#(struct:expr-Pi m0 #(struct:expr-Type #(struct:lzero)) #(struct:expr-Pi m0 #(struct:expr-Type #(struct:lzero)) #(struct:expr-Pi m0 #(struct:expr-Type #(struct:lzero)) #(struct:expr-Pi mw #(struct:expr-Pi mw #(struct:expr-bvar 2) #(struct:expr-Pi mw #(struct:expr-bvar 2) #(struct:expr-bvar 2))) #(struct:expr-Pi mw #(struct:expr-bvar 2) #(struct:expr-Pi mw #(struct:expr-bvar 4) #(struct:expr-bvar 3))))))) . #(struct:expr-lam m0 #(struct:expr-Type #(struct:lzero)) #(struct:expr-lam m0 #(struct:expr-Type #(struct:lzero)) #(struct:expr-lam m0 #(struct:expr-Type #(struct:lzero)) #(struct:expr-lam mw #(struct:expr-Pi mw #(struct:expr-bvar 2) #(struct:expr-Pi mw #(struct:expr-bvar 2) #(struct:expr-bvar 2))) #(struct:expr-lam mw #(struct:expr-bvar 2) #(struct:expr-lam mw #(struct:expr-bvar 4) #(struct:expr-app #(struct:expr-app #(struct:expr-bvar 2) #(struct:expr-bvar 0)) #(struct:expr-bvar 1)))))))))) (prologos::core::id . (#(struct:expr-Pi m0 #(struct:expr-Type #(struct:lzero)) #(struct:expr-Pi mw #(struct:expr-bvar 0) #(struct:expr-bvar 1))) . #(struct:expr-lam m0 #(struct:expr-Type #(struct:lzero)) #(struct:expr-lam mw #(struct:expr-bvar 0) #(struct:expr-bvar 0))))) (prologos::core::on . (#(struct:expr-Pi m0 #(struct:expr-Type #(struct:lzero)) #(struct:expr-Pi m0 #(struct:expr-Type #(struct:lzero)) #(struct:expr-Pi m0 #(struct:expr-Type #(struct:lzero)) #(struct:expr-Pi mw #(struct:expr-Pi mw #(struct:expr-bvar 2) #(struct:expr-Pi mw #(struct:expr-bvar 3) #(struct:expr-bvar 3))) #(struct:expr-Pi mw #(struct:expr-Pi mw #(struct:expr-bvar 1) #(struct:expr-bvar 4)) #(struct:expr-Pi mw #(struct:expr-bvar 2) #(struct:expr-Pi mw #(struct:expr-bvar 3) #(struct:expr-bvar 5)))))))) . #(struct:expr-lam m0 #(struct:expr-Type #(struct:lzero)) #(struct:expr-lam m0 #(struct:expr-Type #(struct:lzero)) #(struct:expr-lam m0 #(struct:expr-Type #(struct:lzero)) #(struct:expr-lam mw #(struct:expr-Pi mw #(struct:expr-bvar 2) #(struct:expr-Pi mw #(struct:expr-bvar 3) #(struct:expr-bvar 3))) #(struct:expr-lam mw #(struct:expr-Pi mw #(struct:expr-bvar 1) #(struct:expr-bvar 4)) #(struct:expr-lam mw #(struct:expr-bvar 2) #(struct:expr-lam mw #(struct:expr-bvar 3) #(struct:expr-app #(struct:expr-app #(struct:expr-bvar 3) #(struct:expr-app #(struct:expr-bvar 2) #(struct:expr-bvar 1))) #(struct:expr-app #(struct:expr-bvar 2) #(struct:expr-bvar 0)))))))))))) (prologos::data::nat::add . (#(struct:expr-Pi mw #(struct:expr-Nat) #(struct:expr-Pi mw #(struct:expr-Nat) #(struct:expr-Nat))) . #(struct:expr-lam mw #(struct:expr-Nat) #(struct:expr-lam mw #(struct:expr-Nat) #(struct:expr-reduce #(struct:expr-bvar 0) (#(struct:expr-reduce-arm zero 0 #(struct:expr-bvar 1)) #(struct:expr-reduce-arm suc 1 #(struct:expr-suc #(struct:expr-app #(struct:expr-app #(struct:expr-fvar prologos::data::nat::add) #(struct:expr-bvar 2)) #(struct:expr-bvar 0))))) #t))))) (prologos::data::nat::bool-to-nat . (#(struct:expr-Pi mw #(struct:expr-Bool) #(struct:expr-Nat)) . #(struct:expr-lam mw #(struct:expr-Bool) #(struct:expr-reduce #(struct:expr-bvar 0) (#(struct:expr-reduce-arm true 0 #(struct:expr-nat-val 1)) #(struct:expr-reduce-arm false 0 #(struct:expr-nat-val 0))) #t)))) (prologos::data::nat::clamp . (#(struct:expr-Pi mw #(struct:expr-Nat) #(struct:expr-Pi mw #(struct:expr-Nat) #(struct:expr-Pi mw #(struct:expr-Nat) #(struct:expr-Nat)))) . #(struct:expr-lam mw #(struct:expr-Nat) #(struct:expr-lam mw #(struct:expr-Nat) #(struct:expr-lam mw #(struct:expr-hole) #(struct:expr-app #(struct:expr-app #(struct:expr-fvar prologos::data::nat::max) #(struct:expr-bvar 2)) #(struct:expr-app #(struct:expr-app #(struct:expr-fvar prologos::data::nat::min) #(struct:expr-bvar 0)) #(struct:expr-bvar 1)))))))) (prologos::data::nat::double . (#(struct:expr-Pi mw #(struct:expr-Nat) #(struct:expr-Nat)) . #(struct:expr-lam mw #(struct:expr-Nat) #(struct:expr-reduce #(struct:expr-bvar 0) (#(struct:expr-reduce-arm zero 0 #(struct:expr-nat-val 0)) #(struct:expr-reduce-arm suc 1 #(struct:expr-suc #(struct:expr-suc #(struct:expr-app #(struct:expr-fvar prologos::data::nat::double) #(struct:expr-bvar 0)))))) #t)))) (prologos::data::nat::ge? . (#(struct:expr-Pi mw #(struct:expr-Nat) #(struct:expr-Pi mw #(struct:expr-Nat) #(struct:expr-Bool))) . #(struct:expr-lam mw #(struct:expr-Nat) #(struct:expr-lam mw #(struct:expr-Nat) #(struct:expr-app #(struct:expr-app #(struct:expr-fvar prologos::data::nat::le?) #(struct:expr-bvar 0)) #(struct:expr-bvar 1)))))) (prologos::data::nat::gt? . (#(struct:expr-Pi mw #(struct:expr-Nat) #(struct:expr-Pi mw #(struct:expr-Nat) #(struct:expr-Bool))) . #(struct:expr-lam mw #(struct:expr-Nat) #(struct:expr-lam mw #(struct:expr-Nat) #(struct:expr-app #(struct:expr-app #(struct:expr-fvar prologos::data::nat::lt?) #(struct:expr-bvar 0)) #(struct:expr-bvar 1)))))) (prologos::data::nat::le? . (#(struct:expr-Pi mw #(struct:expr-Nat) #(struct:expr-Pi mw #(struct:expr-Nat) #(struct:expr-Bool))) . #(struct:expr-lam mw #(struct:expr-Nat) #(struct:expr-lam mw #(struct:expr-Nat) #(struct:expr-app #(struct:expr-fvar prologos::data::nat::zero?) #(struct:expr-app #(struct:expr-app #(struct:expr-fvar prologos::data::nat::sub) #(struct:expr-bvar 1)) #(struct:expr-bvar 0))))))) (prologos::data::nat::lt? . (#(struct:expr-Pi mw #(struct:expr-Nat) #(struct:expr-Pi mw #(struct:expr-Nat) #(struct:expr-Bool))) . #(struct:expr-lam mw #(struct:expr-Nat) #(struct:expr-lam mw #(struct:expr-Nat) #(struct:expr-reduce #(struct:expr-app #(struct:expr-app #(struct:expr-fvar prologos::data::nat::le?) #(struct:expr-bvar 0)) #(struct:expr-bvar 1)) (#(struct:expr-reduce-arm true 0 #(struct:expr-false)) #(struct:expr-reduce-arm false 0 #(struct:expr-true))) #t))))) (prologos::data::nat::max . (#(struct:expr-Pi mw #(struct:expr-Nat) #(struct:expr-Pi mw #(struct:expr-Nat) #(struct:expr-Nat))) . #(struct:expr-lam mw #(struct:expr-Nat) #(struct:expr-lam mw #(struct:expr-Nat) #(struct:expr-reduce #(struct:expr-app #(struct:expr-app #(struct:expr-fvar prologos::data::nat::le?) #(struct:expr-bvar 1)) #(struct:expr-bvar 0)) (#(struct:expr-reduce-arm true 0 #(struct:expr-bvar 0)) #(struct:expr-reduce-arm false 0 #(struct:expr-bvar 1))) #t))))) (prologos::data::nat::min . (#(struct:expr-Pi mw #(struct:expr-Nat) #(struct:expr-Pi mw #(struct:expr-Nat) #(struct:expr-Nat))) . #(struct:expr-lam mw #(struct:expr-Nat) #(struct:expr-lam mw #(struct:expr-Nat) #(struct:expr-reduce #(struct:expr-app #(struct:expr-app #(struct:expr-fvar prologos::data::nat::le?) #(struct:expr-bvar 1)) #(struct:expr-bvar 0)) (#(struct:expr-reduce-arm true 0 #(struct:expr-bvar 1)) #(struct:expr-reduce-arm false 0 #(struct:expr-bvar 0))) #t))))) (prologos::data::nat::mult . (#(struct:expr-Pi mw #(struct:expr-Nat) #(struct:expr-Pi mw #(struct:expr-Nat) #(struct:expr-Nat))) . #(struct:expr-lam mw #(struct:expr-Nat) #(struct:expr-lam mw #(struct:expr-Nat) #(struct:expr-reduce #(struct:expr-bvar 0) (#(struct:expr-reduce-arm zero 0 #(struct:expr-nat-val 0)) #(struct:expr-reduce-arm suc 1 #(struct:expr-app #(struct:expr-app #(struct:expr-fvar prologos::data::nat::add) #(struct:expr-bvar 2)) #(struct:expr-app #(struct:expr-app #(struct:expr-fvar prologos::data::nat::mult) #(struct:expr-bvar 2)) #(struct:expr-bvar 0))))) #t))))) (prologos::data::nat::nat-eq? . (#(struct:expr-Pi mw #(struct:expr-Nat) #(struct:expr-Pi mw #(struct:expr-Nat) #(struct:expr-Bool))) . #(struct:expr-lam mw #(struct:expr-Nat) #(struct:expr-lam mw #(struct:expr-Nat) #(struct:expr-reduce #(struct:expr-app #(struct:expr-app #(struct:expr-fvar prologos::data::nat::le?) #(struct:expr-bvar 1)) #(struct:expr-bvar 0)) (#(struct:expr-reduce-arm true 0 #(struct:expr-app #(struct:expr-app #(struct:expr-fvar prologos::data::nat::le?) #(struct:expr-bvar 0)) #(struct:expr-bvar 1))) #(struct:expr-reduce-arm false 0 #(struct:expr-false))) #t))))) (prologos::data::nat::pow . (#(struct:expr-Pi mw #(struct:expr-Nat) #(struct:expr-Pi mw #(struct:expr-Nat) #(struct:expr-Nat))) . #(struct:expr-lam mw #(struct:expr-Nat) #(struct:expr-lam mw #(struct:expr-Nat) #(struct:expr-reduce #(struct:expr-bvar 0) (#(struct:expr-reduce-arm zero 0 #(struct:expr-nat-val 1)) #(struct:expr-reduce-arm suc 1 #(struct:expr-app #(struct:expr-app #(struct:expr-fvar prologos::data::nat::mult) #(struct:expr-bvar 2)) #(struct:expr-app #(struct:expr-app #(struct:expr-fvar prologos::data::nat::pow) #(struct:expr-bvar 2)) #(struct:expr-bvar 0))))) #t))))) (prologos::data::nat::pred . (#(struct:expr-Pi mw #(struct:expr-Nat) #(struct:expr-Nat)) . #(struct:expr-lam mw #(struct:expr-Nat) #(struct:expr-reduce #(struct:expr-bvar 0) (#(struct:expr-reduce-arm zero 0 #(struct:expr-nat-val 0)) #(struct:expr-reduce-arm suc 1 #(struct:expr-bvar 0))) #t)))) (prologos::data::nat::sub . (#(struct:expr-Pi mw #(struct:expr-Nat) #(struct:expr-Pi mw #(struct:expr-Nat) #(struct:expr-Nat))) . #(struct:expr-lam mw #(struct:expr-Nat) #(struct:expr-lam mw #(struct:expr-Nat) #(struct:expr-reduce #(struct:expr-bvar 0) (#(struct:expr-reduce-arm zero 0 #(struct:expr-bvar 1)) #(struct:expr-reduce-arm suc 1 #(struct:expr-app #(struct:expr-fvar prologos::data::nat::pred) #(struct:expr-app #(struct:expr-app #(struct:expr-fvar prologos::data::nat::sub) #(struct:expr-bvar 2)) #(struct:expr-bvar 0))))) #t))))) (prologos::data::nat::zero? . (#(struct:expr-Pi mw #(struct:expr-Nat) #(struct:expr-Bool)) . #(struct:expr-lam mw #(struct:expr-Nat) #(struct:expr-reduce #(struct:expr-bvar 0) (#(struct:expr-reduce-arm zero 0 #(struct:expr-true)) #(struct:expr-reduce-arm suc 1 #(struct:expr-false))) #t)))) (sub . (#(struct:expr-Pi mw #(struct:expr-Nat) #(struct:expr-Pi mw #(struct:expr-Nat) #(struct:expr-Nat))) . #(struct:expr-lam mw #(struct:expr-Nat) #(struct:expr-lam mw #(struct:expr-Nat) #(struct:expr-reduce #(struct:expr-bvar 0) (#(struct:expr-reduce-arm zero 0 #(struct:expr-bvar 1)) #(struct:expr-reduce-arm suc 1 #(struct:expr-app #(struct:expr-fvar prologos::data::nat::pred) #(struct:expr-app #(struct:expr-app #(struct:expr-fvar prologos::data::nat::sub) #(struct:expr-bvar 2)) #(struct:expr-bvar 0))))) #t))))) (zero? . (#(struct:expr-Pi mw #(struct:expr-Nat) #(struct:expr-Bool)) . #(struct:expr-lam mw #(struct:expr-Nat) #(struct:expr-reduce #(struct:expr-bvar 0) (#(struct:expr-reduce-arm zero 0 #(struct:expr-true)) #(struct:expr-reduce-arm suc 1 #(struct:expr-false))) #t))))) #hasheq((add . #(struct:spec-entry ((Nat Nat -> Nat)) #f #f #(struct:srcloc "" 0 0 0) () () #f #f)) (apply . #(struct:spec-entry (((A -> B) A -> B)) #f #f #(struct:srcloc "" 0 0 0) () ((A Type 0) (B Type 0)) #f #f)) (bool-to-nat . #(struct:spec-entry ((Bool -> Nat)) #f #f #(struct:srcloc "" 0 0 0) () () #f #f)) (clamp . #(struct:spec-entry ((Nat Nat -> Nat -> Nat)) #f #f #(struct:srcloc "" 0 0 0) () () #f #f)) (compose . #(struct:spec-entry (((B -> C) (A -> B) A -> C)) #f #f #(struct:srcloc "" 0 0 0) () ((B Type 0) (C Type 0) (A Type 0)) #f #f)) (const . #(struct:spec-entry ((A B -> A)) #f #f #(struct:srcloc "" 0 0 0) () ((A Type 0) (B Type 0)) #f #f)) (double . #(struct:spec-entry ((Nat -> Nat)) #f #f #(struct:srcloc "" 0 0 0) () () #f #f)) (flip . #(struct:spec-entry (((A -> B -> C) B A -> C)) #f #f #(struct:srcloc "" 0 0 0) () ((A Type 0) (B Type 0) (C Type 0)) #f #f)) (ge? . #(struct:spec-entry ((Nat Nat -> Bool)) #f #f #(struct:srcloc "" 0 0 0) () () #f #f)) (gt? . #(struct:spec-entry ((Nat Nat -> Bool)) #f #f #(struct:srcloc "" 0 0 0) () () #f #f)) (id . #(struct:spec-entry ((A -> A)) #f #f #(struct:srcloc "" 0 0 0) () ((A Type 0)) #f #f)) (le? . #(struct:spec-entry ((Nat Nat -> Bool)) #f #f #(struct:srcloc "" 0 0 0) () () #f #f)) (lt? . #(struct:spec-entry ((Nat Nat -> Bool)) #f #f #(struct:srcloc "" 0 0 0) () () #f #f)) (max . #(struct:spec-entry ((Nat Nat -> Nat)) #f #f #(struct:srcloc "" 0 0 0) () () #f #f)) (min . #(struct:spec-entry ((Nat Nat -> Nat)) #f #f #(struct:srcloc "" 0 0 0) () () #f #f)) (mult . #(struct:spec-entry ((Nat Nat -> Nat)) #f #f #(struct:srcloc "" 0 0 0) () () #f #f)) (nat-eq? . #(struct:spec-entry ((Nat Nat -> Bool)) #f #f #(struct:srcloc "" 0 0 0) () () #f #f)) (on . #(struct:spec-entry (((B -> B -> C) (A -> B) A A -> C)) #f #f #(struct:srcloc "" 0 0 0) () ((B Type 0) (C Type 0) (A Type 0)) #f #f)) (pow . #(struct:spec-entry ((Nat Nat -> Nat)) #f #f #(struct:srcloc "" 0 0 0) () () #f #f)) (pred . #(struct:spec-entry ((Nat -> Nat)) #f #f #(struct:srcloc "" 0 0 0) () () #f #f)) (sub . #(struct:spec-entry ((Nat Nat -> Nat)) #f #f #(struct:srcloc "" 0 0 0) () () #f #f)) (zero? . #(struct:spec-entry ((Nat -> Bool)) #f #f #(struct:srcloc "" 0 0 0) () () #f #f))) #hasheq((Ordering . #(struct:srcloc "/home/user/prologos/racket/prologos/lib/prologos/data/ordering.prologos" 8 0 40)) (add . #(struct:srcloc "/home/user/prologos/racket/prologos/lib/prologos/data/nat.prologos" 10 0 69)) (and . #(struct:srcloc "/home/user/prologos/racket/prologos/lib/prologos/data/bool.prologos" 17 0 62)) (apply . #(struct:srcloc "/home/user/prologos/racket/prologos/lib/prologos/core.prologos" 25 0 23)) (bool-eq . #(struct:srcloc "/home/user/prologos/racket/prologos/lib/prologos/data/bool.prologos" 38 0 66)) (bool-to-nat . #(struct:srcloc "/home/user/prologos/racket/prologos/lib/prologos/data/nat.prologos" 119 0 74)) (clamp . #(struct:srcloc "/home/user/prologos/racket/prologos/lib/prologos/data/nat.prologos" 126 0 54)) (compose . #(struct:srcloc "/home/user/prologos/racket/prologos/lib/prologos/core.prologos" 20 0 29)) (const . #(struct:srcloc "/home/user/prologos/racket/prologos/lib/prologos/core.prologos" 15 0 20)) (double . #(struct:srcloc "/home/user/prologos/racket/prologos/lib/prologos/data/nat.prologos" 24 0 79)) (eq-ord . #(struct:srcloc "/home/user/prologos/racket/prologos/lib/prologos/data/ordering.prologos" 8 0 40)) (flip . #(struct:srcloc "/home/user/prologos/racket/prologos/lib/prologos/core.prologos" 30 0 26)) (ge? . #(struct:srcloc "/home/user/prologos/racket/prologos/lib/prologos/data/nat.prologos" 85 0 24)) (gt-ord . #(struct:srcloc "/home/user/prologos/racket/prologos/lib/prologos/data/ordering.prologos" 8 0 40)) (gt? . #(struct:srcloc "/home/user/prologos/racket/prologos/lib/prologos/data/nat.prologos" 80 0 24)) (id . #(struct:srcloc "/home/user/prologos/racket/prologos/lib/prologos/core.prologos" 10 0 15)) (implies . #(struct:srcloc "/home/user/prologos/racket/prologos/lib/prologos/data/bool.prologos" 59 0 33)) (le? . #(struct:srcloc "/home/user/prologos/racket/prologos/lib/prologos/data/nat.prologos" 68 0 31)) (lt-ord . #(struct:srcloc "/home/user/prologos/racket/prologos/lib/prologos/data/ordering.prologos" 8 0 40)) (lt? . #(struct:srcloc "/home/user/prologos/racket/prologos/lib/prologos/data/nat.prologos" 73 0 73)) (max . #(struct:srcloc "/home/user/prologos/racket/prologos/lib/prologos/data/nat.prologos" 108 0 66)) (min . #(struct:srcloc "/home/user/prologos/racket/prologos/lib/prologos/data/nat.prologos" 101 0 66)) (mult . #(struct:srcloc "/home/user/prologos/racket/prologos/lib/prologos/data/nat.prologos" 17 0 76)) (nand . #(struct:srcloc "/home/user/prologos/racket/prologos/lib/prologos/data/bool.prologos" 49 0 30)) (nat-eq? . #(struct:srcloc "/home/user/prologos/racket/prologos/lib/prologos/data/nat.prologos" 90 0 80)) (nor . #(struct:srcloc "/home/user/prologos/racket/prologos/lib/prologos/data/bool.prologos" 54 0 28)) (not . #(struct:srcloc "/home/user/prologos/racket/prologos/lib/prologos/data/bool.prologos" 10 0 63)) (on . #(struct:srcloc "/home/user/prologos/racket/prologos/lib/prologos/core.prologos" 36 0 32)) (or . #(struct:srcloc "/home/user/prologos/racket/prologos/lib/prologos/data/bool.prologos" 24 0 60)) (pow . #(struct:srcloc "/home/user/prologos/racket/prologos/lib/prologos/data/nat.prologos" 57 0 92)) (pred . #(struct:srcloc "/home/user/prologos/racket/prologos/lib/prologos/data/nat.prologos" 31 0 60)) (prologos::core::apply . #(struct:srcloc "/home/user/prologos/racket/prologos/lib/prologos/core.prologos" 25 0 23)) (prologos::core::compose . #(struct:srcloc "/home/user/prologos/racket/prologos/lib/prologos/core.prologos" 20 0 29)) (prologos::core::const . #(struct:srcloc "/home/user/prologos/racket/prologos/lib/prologos/core.prologos" 15 0 20)) (prologos::core::flip . #(struct:srcloc "/home/user/prologos/racket/prologos/lib/prologos/core.prologos" 30 0 26)) (prologos::core::id . #(struct:srcloc "/home/user/prologos/racket/prologos/lib/prologos/core.prologos" 10 0 15)) (prologos::core::on . #(struct:srcloc "/home/user/prologos/racket/prologos/lib/prologos/core.prologos" 36 0 32)) (prologos::data::bool::and . #(struct:srcloc "/home/user/prologos/racket/prologos/lib/prologos/data/bool.prologos" 17 0 62)) (prologos::data::bool::bool-eq . #(struct:srcloc "/home/user/prologos/racket/prologos/lib/prologos/data/bool.prologos" 38 0 66)) (prologos::data::bool::implies . #(struct:srcloc "/home/user/prologos/racket/prologos/lib/prologos/data/bool.prologos" 59 0 33)) (prologos::data::bool::nand . #(struct:srcloc "/home/user/prologos/racket/prologos/lib/prologos/data/bool.prologos" 49 0 30)) (prologos::data::bool::nor . #(struct:srcloc "/home/user/prologos/racket/prologos/lib/prologos/data/bool.prologos" 54 0 28)) (prologos::data::bool::not . #(struct:srcloc "/home/user/prologos/racket/prologos/lib/prologos/data/bool.prologos" 10 0 63)) (prologos::data::bool::or . #(struct:srcloc "/home/user/prologos/racket/prologos/lib/prologos/data/bool.prologos" 24 0 60)) (prologos::data::bool::xor . #(struct:srcloc "/home/user/prologos/racket/prologos/lib/prologos/data/bool.prologos" 31 0 62)) (prologos::data::nat::add . #(struct:srcloc "/home/user/prologos/racket/prologos/lib/prologos/data/nat.prologos" 10 0 69)) (prologos::data::nat::bool-to-nat . #(struct:srcloc "/home/user/prologos/racket/prologos/lib/prologos/data/nat.prologos" 119 0 74)) (prologos::data::nat::clamp . #(struct:srcloc "/home/user/prologos/racket/prologos/lib/prologos/data/nat.prologos" 126 0 54)) (prologos::data::nat::double . #(struct:srcloc "/home/user/prologos/racket/prologos/lib/prologos/data/nat.prologos" 24 0 79)) (prologos::data::nat::ge? . #(struct:srcloc "/home/user/prologos/racket/prologos/lib/prologos/data/nat.prologos" 85 0 24)) (prologos::data::nat::gt? . #(struct:srcloc "/home/user/prologos/racket/prologos/lib/prologos/data/nat.prologos" 80 0 24)) (prologos::data::nat::le? . #(struct:srcloc "/home/user/prologos/racket/prologos/lib/prologos/data/nat.prologos" 68 0 31)) (prologos::data::nat::lt? . #(struct:srcloc "/home/user/prologos/racket/prologos/lib/prologos/data/nat.prologos" 73 0 73)) (prologos::data::nat::max . #(struct:srcloc "/home/user/prologos/racket/prologos/lib/prologos/data/nat.prologos" 108 0 66)) (prologos::data::nat::min . #(struct:srcloc "/home/user/prologos/racket/prologos/lib/prologos/data/nat.prologos" 101 0 66)) (prologos::data::nat::mult . #(struct:srcloc "/home/user/prologos/racket/prologos/lib/prologos/data/nat.prologos" 17 0 76)) (prologos::data::nat::nat-eq? . #(struct:srcloc "/home/user/prologos/racket/prologos/lib/prologos/data/nat.prologos" 90 0 80)) (prologos::data::nat::pow . #(struct:srcloc "/home/user/prologos/racket/prologos/lib/prologos/data/nat.prologos" 57 0 92)) (prologos::data::nat::pred . #(struct:srcloc "/home/user/prologos/racket/prologos/lib/prologos/data/nat.prologos" 31 0 60)) (prologos::data::nat::sub . #(struct:srcloc "/home/user/prologos/racket/prologos/lib/prologos/data/nat.prologos" 50 0 70)) (prologos::data::nat::zero? . #(struct:srcloc "/home/user/prologos/racket/prologos/lib/prologos/data/nat.prologos" 38 0 65)) (prologos::data::ordering::Ordering . #(struct:srcloc "/home/user/prologos/racket/prologos/lib/prologos/data/ordering.prologos" 8 0 40)) (prologos::data::ordering::eq-ord . #(struct:srcloc "/home/user/prologos/racket/prologos/lib/prologos/data/ordering.prologos" 8 0 40)) (prologos::data::ordering::gt-ord . #(struct:srcloc "/home/user/prologos/racket/prologos/lib/prologos/data/ordering.prologos" 8 0 40)) (prologos::data::ordering::lt-ord . #(struct:srcloc "/home/user/prologos/racket/prologos/lib/prologos/data/ordering.prologos" 8 0 40)) (sub . #(struct:srcloc "/home/user/prologos/racket/prologos/lib/prologos/data/nat.prologos" 50 0 70)) (xor . #(struct:srcloc "/home/user/prologos/racket/prologos/lib/prologos/data/bool.prologos" 31 0 62)) (zero? . #(struct:srcloc "/home/user/prologos/racket/prologos/lib/prologos/data/nat.prologos" 38 0 65))) (add mult double pred zero? sub pow le? lt? gt? ge? nat-eq? min max bool-to-nat clamp) "prologos::data::nat" #hasheq(($compose . expand-compose-sexp) ($list-literal . expand-list-literal) ($lseq-literal . expand-lseq-literal) ($mixfix . expand-mixfix-form) ($pipe-gt . expand-pipe-block) ($quasiquote . expand-quasiquote) ($quote . expand-quote) (cond . expand-cond) (do . expand-do) (if . expand-if) (let . expand-let) (pipe2 . #(struct:preparse-macro pipe2 (pipe2 $x $f $g) ($g ($f $x)))) (pipe3 . #(struct:preparse-macro pipe3 (pipe3 $x $f $g $h) ($h ($g ($f $x))))) (twice . #(struct:preparse-macro twice (twice $f $x) ($f ($f $x)))) (unless . #(struct:preparse-macro unless (unless $cond $body) (if $cond unit $body))) (when . #(struct:preparse-macro when (when $cond $body) (if $cond $body unit))) (with-transient . expand-with-transient)) #hasheq((eq-ord . #(struct:ctor-meta Ordering () () () 1)) (false . #(struct:ctor-meta Bool () () () 1)) (gt-ord . #(struct:ctor-meta Ordering () () () 2)) (lt-ord . #(struct:ctor-meta Ordering () () () 0)) (suc . #(struct:ctor-meta Nat () (Nat) (#t) 1)) (true . #(struct:ctor-meta Bool () () () 0)) (unit . #(struct:ctor-meta Unit () () () 0)) (zero . #(struct:ctor-meta Nat () () () 0))) #hasheq((Bool . (true false)) (Nat . (zero suc)) (Ordering . (lt-ord eq-ord gt-ord)) (Unit . (unit))) #hasheq() #hasheq(((Posit16 . Posit32) . #t) ((Nat . Int) . #t) ((Posit8 . Posit64) . #t) ((Posit8 . Posit32) . #t) ((Posit32 . Posit64) . #t) ((Nat . Rat) . #t) ((Posit8 . Posit16) . #t) ((Posit16 . Posit64) . #t) ((Int . Rat) . #t)) #hasheq() #hasheq() #hasheq() #hasheq() #hasheq() #hasheq() #hasheq() #hasheq() #hasheq((add . (x y)) (and . (a b)) (apply . (A B f x)) (bool-eq . (a b)) (bool-to-nat . (b)) (clamp . (low high)) (compose . (B C A g f x)) (const . (A B x _)) (double . (n)) (flip . (A B C f b a)) (ge? . (x y)) (gt? . (x y)) (id . (A x)) (implies . (a b)) (le? . (x y)) (lt? . (x y)) (max . (x y)) (min . (x y)) (mult . (x y)) (nand . (a b)) (nat-eq? . (x y)) (nor . (a b)) (not . (b)) (on . (B C A f g x y)) (or . (a b)) (pow . (base exp)) (pred . (n)) (sub . (x y)) (xor . (a b)) (zero? . (n))) #hasheq() #hasheq() #hasheq()) \ No newline at end of file From ff6540bff8bbc66dd3794250c29eadf05d5da2a6 Mon Sep 17 00:00:00 2001 From: Claude Date: Tue, 28 Apr 2026 21:03:50 +0000 Subject: [PATCH 6/6] ffi: strict per-width Posit marshal-in dispatch Per copilot review on PR #33: marshal-prologos->racket previously routed all Posit widths through a single posit->rational helper that inferred the width from the IR struct itself. As a result, a `Posit8`-typed foreign argument would silently accept an `expr-posit16` (and vice versa), defeating the width distinction and hiding precision/range mismatches. Fix: split into per-width converters (posit8->rational, posit16->rational, posit32->rational, posit64->rational), each of which only matches its own expr-posit*. The marshal-prologos->racket dispatch now picks the converter based on the *declared* type, so the IR width must agree. The width-dispatching wrapper posit->rational is retained as a public API but now takes the declared width as an argument. Tests: 4 new cases in test-foreign-marshal-ext.rkt assert that: - each declared Posit width rejects IR of every other width (12 cases) - per-width converters reject mismatched IR (4 cases) - the wrapper posit->rational accepts the declared width and rejects mismatches Existing coverage unchanged. 52 unit + 52 integration tests pass on Racket v9.1. --- racket/prologos/foreign.rkt | 72 +++++++++++++------ .../tests/test-foreign-marshal-ext.rkt | 49 +++++++++++-- 2 files changed, 96 insertions(+), 25 deletions(-) diff --git a/racket/prologos/foreign.rkt b/racket/prologos/foreign.rkt index 8da90f34a..05606a929 100644 --- a/racket/prologos/foreign.rkt +++ b/racket/prologos/foreign.rkt @@ -29,6 +29,10 @@ int->integer integer->int posit->rational + posit8->rational + posit16->rational + posit32->rational + posit64->rational rational->posit prologos-list->racket-list racket-list->prologos-list @@ -81,25 +85,50 @@ [(expr-string v) v] [_ (error 'foreign "Cannot marshal to string — not a String literal: ~a" e)])) -;; Convert a Prologos Posit (any width) to a Racket exact rational. -;; NaR contamination raises an error since rationals cannot represent NaR. -(define (posit->rational e) - (define-values (width bits) - (match e - [(expr-posit8 v) (values 8 v)] - [(expr-posit16 v) (values 16 v)] - [(expr-posit32 v) (values 32 v)] - [(expr-posit64 v) (values 64 v)] - [_ (error 'foreign "Cannot marshal to rational — not a Posit literal: ~a" e)])) - (define r - (case width - [(8) (posit8-to-rational bits)] - [(16) (posit16-to-rational bits)] - [(32) (posit32-to-rational bits)] - [(64) (posit64-to-rational bits)])) - (when (eq? r 'nar) - (error 'foreign "Cannot marshal Posit~a NaR to rational" width)) - r) +;; Per-width Prologos Posit → Racket exact rational converters. Each rejects +;; mismatched IR widths so a `Posit8`-typed slot won't silently accept an +;; `expr-posit16` (and vice versa). NaR contamination raises an error since +;; rationals cannot represent NaR. +(define (posit8->rational e) + (match e + [(expr-posit8 v) + (let ([r (posit8-to-rational v)]) + (when (eq? r 'nar) (error 'foreign "Cannot marshal Posit8 NaR to rational")) + r)] + [_ (error 'foreign "Cannot marshal to rational — not a Posit8 literal: ~a" e)])) + +(define (posit16->rational e) + (match e + [(expr-posit16 v) + (let ([r (posit16-to-rational v)]) + (when (eq? r 'nar) (error 'foreign "Cannot marshal Posit16 NaR to rational")) + r)] + [_ (error 'foreign "Cannot marshal to rational — not a Posit16 literal: ~a" e)])) + +(define (posit32->rational e) + (match e + [(expr-posit32 v) + (let ([r (posit32-to-rational v)]) + (when (eq? r 'nar) (error 'foreign "Cannot marshal Posit32 NaR to rational")) + r)] + [_ (error 'foreign "Cannot marshal to rational — not a Posit32 literal: ~a" e)])) + +(define (posit64->rational e) + (match e + [(expr-posit64 v) + (let ([r (posit64-to-rational v)]) + (when (eq? r 'nar) (error 'foreign "Cannot marshal Posit64 NaR to rational")) + r)] + [_ (error 'foreign "Cannot marshal to rational — not a Posit64 literal: ~a" e)])) + +;; Width-dispatching wrapper: caller passes the declared Posit width. +(define (posit->rational width e) + (case width + [(8) (posit8->rational e)] + [(16) (posit16->rational e)] + [(32) (posit32->rational e)] + [(64) (posit64->rational e)] + [else (error 'foreign "Unknown Posit width: ~a" width)])) ;; Helpers: recognize cons/nil names regardless of namespace qualification. (define (list-cons-name? name) @@ -177,7 +206,10 @@ [(Unit) (void)] [(Char) (char->rkt-char val)] [(String) (string->rkt-string val)] - [(Posit8 Posit16 Posit32 Posit64) (posit->rational val)] + [(Posit8) (posit8->rational val)] + [(Posit16) (posit16->rational val)] + [(Posit32) (posit32->rational val)] + [(Posit64) (posit64->rational val)] ;; Passthrough types: the Prologos IR value IS the Racket value [(Path Keyword Passthrough) val] [else diff --git a/racket/prologos/tests/test-foreign-marshal-ext.rkt b/racket/prologos/tests/test-foreign-marshal-ext.rkt index 6164b84e3..ecc700980 100644 --- a/racket/prologos/tests/test-foreign-marshal-ext.rkt +++ b/racket/prologos/tests/test-foreign-marshal-ext.rkt @@ -82,6 +82,38 @@ (check-exn exn:fail? (lambda () (marshal-prologos->racket 'Posit8 (expr-int 1))))) +(test-case "ffi-ext/Posit width mismatch is rejected per direction" + ;; Each declared Posit width must reject IR of any other width — otherwise + ;; a Posit8-typed slot would silently accept a Posit16 literal (and vice + ;; versa), defeating the width distinction. + (define p8 (marshal-racket->prologos 'Posit8 1)) + (define p16 (marshal-racket->prologos 'Posit16 1)) + (define p32 (marshal-racket->prologos 'Posit32 1)) + (define p64 (marshal-racket->prologos 'Posit64 1)) + ;; Posit8 declared, but Posit16/32/64 IR — must fail. + (check-exn exn:fail? (lambda () (marshal-prologos->racket 'Posit8 p16))) + (check-exn exn:fail? (lambda () (marshal-prologos->racket 'Posit8 p32))) + (check-exn exn:fail? (lambda () (marshal-prologos->racket 'Posit8 p64))) + ;; Posit16 declared, but Posit8/32/64 IR — must fail. + (check-exn exn:fail? (lambda () (marshal-prologos->racket 'Posit16 p8))) + (check-exn exn:fail? (lambda () (marshal-prologos->racket 'Posit16 p32))) + (check-exn exn:fail? (lambda () (marshal-prologos->racket 'Posit16 p64))) + ;; Posit32 declared, but Posit8/16/64 IR — must fail. + (check-exn exn:fail? (lambda () (marshal-prologos->racket 'Posit32 p8))) + (check-exn exn:fail? (lambda () (marshal-prologos->racket 'Posit32 p16))) + (check-exn exn:fail? (lambda () (marshal-prologos->racket 'Posit32 p64))) + ;; Posit64 declared, but Posit8/16/32 IR — must fail. + (check-exn exn:fail? (lambda () (marshal-prologos->racket 'Posit64 p8))) + (check-exn exn:fail? (lambda () (marshal-prologos->racket 'Posit64 p16))) + (check-exn exn:fail? (lambda () (marshal-prologos->racket 'Posit64 p32)))) + +(test-case "ffi-ext/Posit per-width converters reject mismatched IR" + ;; The per-width API (posit8->rational etc.) is also strict. + (check-exn exn:fail? (lambda () (posit8->rational (marshal-racket->prologos 'Posit16 1)))) + (check-exn exn:fail? (lambda () (posit16->rational (marshal-racket->prologos 'Posit32 1)))) + (check-exn exn:fail? (lambda () (posit32->rational (marshal-racket->prologos 'Posit64 1)))) + (check-exn exn:fail? (lambda () (posit64->rational (marshal-racket->prologos 'Posit8 1))))) + ;; ======================================== ;; Posit16 / Posit32 / Posit64 marshalling ;; ======================================== @@ -129,11 +161,18 @@ ;; posit->rational / rational->posit direct API ;; ======================================== -(test-case "ffi-ext/posit->rational: dispatches by width on the IR" - (check-equal? (posit->rational (marshal-racket->prologos 'Posit8 1)) 1) - (check-equal? (posit->rational (marshal-racket->prologos 'Posit16 1)) 1) - (check-equal? (posit->rational (marshal-racket->prologos 'Posit32 1)) 1) - (check-equal? (posit->rational (marshal-racket->prologos 'Posit64 1)) 1)) +(test-case "ffi-ext/posit->rational: dispatches by declared width" + ;; The width-dispatching wrapper takes the declared width explicitly. + (check-equal? (posit->rational 8 (marshal-racket->prologos 'Posit8 1)) 1) + (check-equal? (posit->rational 16 (marshal-racket->prologos 'Posit16 1)) 1) + (check-equal? (posit->rational 32 (marshal-racket->prologos 'Posit32 1)) 1) + (check-equal? (posit->rational 64 (marshal-racket->prologos 'Posit64 1)) 1)) + +(test-case "ffi-ext/posit->rational: rejects mismatched declared/actual width" + (check-exn exn:fail? + (lambda () (posit->rational 8 (marshal-racket->prologos 'Posit16 1)))) + (check-exn exn:fail? + (lambda () (posit->rational 32 (marshal-racket->prologos 'Posit8 1))))) (test-case "ffi-ext/rational->posit: builds the right IR width" (check-pred expr-posit8? (rational->posit 8 1/2))